diff --git a/api/opinit/opchild/v1/genesis.pulsar.go b/api/opinit/opchild/v1/genesis.pulsar.go index 6aed5c3f..145f50cf 100644 --- a/api/opinit/opchild/v1/genesis.pulsar.go +++ b/api/opinit/opchild/v1/genesis.pulsar.go @@ -117,119 +117,15 @@ func (x *_GenesisState_3_list) IsValid() bool { return x.list != nil } -var _ protoreflect.List = (*_GenesisState_4_list)(nil) - -type _GenesisState_4_list struct { - list *[]*PendingDeposits -} - -func (x *_GenesisState_4_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_GenesisState_4_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) -} - -func (x *_GenesisState_4_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*PendingDeposits) - (*x.list)[i] = concreteValue -} - -func (x *_GenesisState_4_list) Append(value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*PendingDeposits) - *x.list = append(*x.list, concreteValue) -} - -func (x *_GenesisState_4_list) AppendMutable() protoreflect.Value { - v := new(PendingDeposits) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_GenesisState_4_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_GenesisState_4_list) NewElement() protoreflect.Value { - v := new(PendingDeposits) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_GenesisState_4_list) IsValid() bool { - return x.list != nil -} - -var _ protoreflect.List = (*_GenesisState_5_list)(nil) - -type _GenesisState_5_list struct { - list *[]*WithdrawalCommitment -} - -func (x *_GenesisState_5_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_GenesisState_5_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) -} - -func (x *_GenesisState_5_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*WithdrawalCommitment) - (*x.list)[i] = concreteValue -} - -func (x *_GenesisState_5_list) Append(value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*WithdrawalCommitment) - *x.list = append(*x.list, concreteValue) -} - -func (x *_GenesisState_5_list) AppendMutable() protoreflect.Value { - v := new(WithdrawalCommitment) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_GenesisState_5_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_GenesisState_5_list) NewElement() protoreflect.Value { - v := new(WithdrawalCommitment) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_GenesisState_5_list) IsValid() bool { - return x.list != nil -} - var ( - md_GenesisState protoreflect.MessageDescriptor - fd_GenesisState_params protoreflect.FieldDescriptor - fd_GenesisState_last_validator_powers protoreflect.FieldDescriptor - fd_GenesisState_validators protoreflect.FieldDescriptor - fd_GenesisState_pending_deposits protoreflect.FieldDescriptor - fd_GenesisState_withdrawal_commitments protoreflect.FieldDescriptor - fd_GenesisState_next_l2_sequence protoreflect.FieldDescriptor - fd_GenesisState_next_l1_sequence protoreflect.FieldDescriptor - fd_GenesisState_bridge_info protoreflect.FieldDescriptor - fd_GenesisState_exported protoreflect.FieldDescriptor + md_GenesisState protoreflect.MessageDescriptor + fd_GenesisState_params protoreflect.FieldDescriptor + fd_GenesisState_last_validator_powers protoreflect.FieldDescriptor + fd_GenesisState_validators protoreflect.FieldDescriptor + fd_GenesisState_next_l2_sequence protoreflect.FieldDescriptor + fd_GenesisState_next_l1_sequence protoreflect.FieldDescriptor + fd_GenesisState_bridge_info protoreflect.FieldDescriptor + fd_GenesisState_exported protoreflect.FieldDescriptor ) func init() { @@ -238,8 +134,6 @@ func init() { fd_GenesisState_params = md_GenesisState.Fields().ByName("params") fd_GenesisState_last_validator_powers = md_GenesisState.Fields().ByName("last_validator_powers") fd_GenesisState_validators = md_GenesisState.Fields().ByName("validators") - fd_GenesisState_pending_deposits = md_GenesisState.Fields().ByName("pending_deposits") - fd_GenesisState_withdrawal_commitments = md_GenesisState.Fields().ByName("withdrawal_commitments") fd_GenesisState_next_l2_sequence = md_GenesisState.Fields().ByName("next_l2_sequence") fd_GenesisState_next_l1_sequence = md_GenesisState.Fields().ByName("next_l1_sequence") fd_GenesisState_bridge_info = md_GenesisState.Fields().ByName("bridge_info") @@ -329,18 +223,6 @@ func (x *fastReflection_GenesisState) Range(f func(protoreflect.FieldDescriptor, return } } - if len(x.PendingDeposits) != 0 { - value := protoreflect.ValueOfList(&_GenesisState_4_list{list: &x.PendingDeposits}) - if !f(fd_GenesisState_pending_deposits, value) { - return - } - } - if len(x.WithdrawalCommitments) != 0 { - value := protoreflect.ValueOfList(&_GenesisState_5_list{list: &x.WithdrawalCommitments}) - if !f(fd_GenesisState_withdrawal_commitments, value) { - return - } - } if x.NextL2Sequence != uint64(0) { value := protoreflect.ValueOfUint64(x.NextL2Sequence) if !f(fd_GenesisState_next_l2_sequence, value) { @@ -386,10 +268,6 @@ func (x *fastReflection_GenesisState) Has(fd protoreflect.FieldDescriptor) bool return len(x.LastValidatorPowers) != 0 case "opinit.opchild.v1.GenesisState.validators": return len(x.Validators) != 0 - case "opinit.opchild.v1.GenesisState.pending_deposits": - return len(x.PendingDeposits) != 0 - case "opinit.opchild.v1.GenesisState.withdrawal_commitments": - return len(x.WithdrawalCommitments) != 0 case "opinit.opchild.v1.GenesisState.next_l2_sequence": return x.NextL2Sequence != uint64(0) case "opinit.opchild.v1.GenesisState.next_l1_sequence": @@ -420,10 +298,6 @@ func (x *fastReflection_GenesisState) Clear(fd protoreflect.FieldDescriptor) { x.LastValidatorPowers = nil case "opinit.opchild.v1.GenesisState.validators": x.Validators = nil - case "opinit.opchild.v1.GenesisState.pending_deposits": - x.PendingDeposits = nil - case "opinit.opchild.v1.GenesisState.withdrawal_commitments": - x.WithdrawalCommitments = nil case "opinit.opchild.v1.GenesisState.next_l2_sequence": x.NextL2Sequence = uint64(0) case "opinit.opchild.v1.GenesisState.next_l1_sequence": @@ -463,18 +337,6 @@ func (x *fastReflection_GenesisState) Get(descriptor protoreflect.FieldDescripto } listValue := &_GenesisState_3_list{list: &x.Validators} return protoreflect.ValueOfList(listValue) - case "opinit.opchild.v1.GenesisState.pending_deposits": - if len(x.PendingDeposits) == 0 { - return protoreflect.ValueOfList(&_GenesisState_4_list{}) - } - listValue := &_GenesisState_4_list{list: &x.PendingDeposits} - return protoreflect.ValueOfList(listValue) - case "opinit.opchild.v1.GenesisState.withdrawal_commitments": - if len(x.WithdrawalCommitments) == 0 { - return protoreflect.ValueOfList(&_GenesisState_5_list{}) - } - listValue := &_GenesisState_5_list{list: &x.WithdrawalCommitments} - return protoreflect.ValueOfList(listValue) case "opinit.opchild.v1.GenesisState.next_l2_sequence": value := x.NextL2Sequence return protoreflect.ValueOfUint64(value) @@ -517,14 +379,6 @@ func (x *fastReflection_GenesisState) Set(fd protoreflect.FieldDescriptor, value lv := value.List() clv := lv.(*_GenesisState_3_list) x.Validators = *clv.list - case "opinit.opchild.v1.GenesisState.pending_deposits": - lv := value.List() - clv := lv.(*_GenesisState_4_list) - x.PendingDeposits = *clv.list - case "opinit.opchild.v1.GenesisState.withdrawal_commitments": - lv := value.List() - clv := lv.(*_GenesisState_5_list) - x.WithdrawalCommitments = *clv.list case "opinit.opchild.v1.GenesisState.next_l2_sequence": x.NextL2Sequence = value.Uint() case "opinit.opchild.v1.GenesisState.next_l1_sequence": @@ -570,18 +424,6 @@ func (x *fastReflection_GenesisState) Mutable(fd protoreflect.FieldDescriptor) p } value := &_GenesisState_3_list{list: &x.Validators} return protoreflect.ValueOfList(value) - case "opinit.opchild.v1.GenesisState.pending_deposits": - if x.PendingDeposits == nil { - x.PendingDeposits = []*PendingDeposits{} - } - value := &_GenesisState_4_list{list: &x.PendingDeposits} - return protoreflect.ValueOfList(value) - case "opinit.opchild.v1.GenesisState.withdrawal_commitments": - if x.WithdrawalCommitments == nil { - x.WithdrawalCommitments = []*WithdrawalCommitment{} - } - value := &_GenesisState_5_list{list: &x.WithdrawalCommitments} - return protoreflect.ValueOfList(value) case "opinit.opchild.v1.GenesisState.bridge_info": if x.BridgeInfo == nil { x.BridgeInfo = new(BridgeInfo) @@ -615,12 +457,6 @@ func (x *fastReflection_GenesisState) NewField(fd protoreflect.FieldDescriptor) case "opinit.opchild.v1.GenesisState.validators": list := []*Validator{} return protoreflect.ValueOfList(&_GenesisState_3_list{list: &list}) - case "opinit.opchild.v1.GenesisState.pending_deposits": - list := []*PendingDeposits{} - return protoreflect.ValueOfList(&_GenesisState_4_list{list: &list}) - case "opinit.opchild.v1.GenesisState.withdrawal_commitments": - list := []*WithdrawalCommitment{} - return protoreflect.ValueOfList(&_GenesisState_5_list{list: &list}) case "opinit.opchild.v1.GenesisState.next_l2_sequence": return protoreflect.ValueOfUint64(uint64(0)) case "opinit.opchild.v1.GenesisState.next_l1_sequence": @@ -715,18 +551,6 @@ func (x *fastReflection_GenesisState) ProtoMethods() *protoiface.Methods { n += 1 + l + runtime.Sov(uint64(l)) } } - if len(x.PendingDeposits) > 0 { - for _, e := range x.PendingDeposits { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - if len(x.WithdrawalCommitments) > 0 { - for _, e := range x.WithdrawalCommitments { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } if x.NextL2Sequence != 0 { n += 1 + runtime.Sov(uint64(x.NextL2Sequence)) } @@ -803,38 +627,6 @@ func (x *fastReflection_GenesisState) ProtoMethods() *protoiface.Methods { i-- dAtA[i] = 0x30 } - if len(x.WithdrawalCommitments) > 0 { - for iNdEx := len(x.WithdrawalCommitments) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.WithdrawalCommitments[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x2a - } - } - if len(x.PendingDeposits) > 0 { - for iNdEx := len(x.PendingDeposits) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.PendingDeposits[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x22 - } - } if len(x.Validators) > 0 { for iNdEx := len(x.Validators) - 1; iNdEx >= 0; iNdEx-- { encoded, err := options.Marshal(x.Validators[iNdEx]) @@ -1034,74 +826,6 @@ func (x *fastReflection_GenesisState) ProtoMethods() *protoiface.Methods { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err } iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field PendingDeposits", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.PendingDeposits = append(x.PendingDeposits, &PendingDeposits{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.PendingDeposits[len(x.PendingDeposits)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field WithdrawalCommitments", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.WithdrawalCommitments = append(x.WithdrawalCommitments, &WithdrawalCommitment{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.WithdrawalCommitments[len(x.WithdrawalCommitments)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex case 6: if wireType != 0 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field NextL2Sequence", wireType) @@ -1724,15 +1448,11 @@ type GenesisState struct { // of the last-block's bonded validators. LastValidatorPowers []*LastValidatorPower `protobuf:"bytes,2,rep,name=last_validator_powers,json=lastValidatorPowers,proto3" json:"last_validator_powers,omitempty"` // delegations defines the validator set at genesis. - Validators []*Validator `protobuf:"bytes,3,rep,name=validators,proto3" json:"validators,omitempty"` - // the pending deposits that are not failed to be deposited. - PendingDeposits []*PendingDeposits `protobuf:"bytes,4,rep,name=pending_deposits,json=pendingDeposits,proto3" json:"pending_deposits,omitempty"` - // the withdrawal commitments for force withdrawal. - WithdrawalCommitments []*WithdrawalCommitment `protobuf:"bytes,5,rep,name=withdrawal_commitments,json=withdrawalCommitments,proto3" json:"withdrawal_commitments,omitempty"` - NextL2Sequence uint64 `protobuf:"varint,6,opt,name=next_l2_sequence,json=nextL2Sequence,proto3" json:"next_l2_sequence,omitempty"` - NextL1Sequence uint64 `protobuf:"varint,7,opt,name=next_l1_sequence,json=nextL1Sequence,proto3" json:"next_l1_sequence,omitempty"` - BridgeInfo *BridgeInfo `protobuf:"bytes,8,opt,name=bridge_info,json=bridgeInfo,proto3" json:"bridge_info,omitempty"` - Exported bool `protobuf:"varint,9,opt,name=exported,proto3" json:"exported,omitempty"` + Validators []*Validator `protobuf:"bytes,3,rep,name=validators,proto3" json:"validators,omitempty"` + NextL2Sequence uint64 `protobuf:"varint,6,opt,name=next_l2_sequence,json=nextL2Sequence,proto3" json:"next_l2_sequence,omitempty"` + NextL1Sequence uint64 `protobuf:"varint,7,opt,name=next_l1_sequence,json=nextL1Sequence,proto3" json:"next_l1_sequence,omitempty"` + BridgeInfo *BridgeInfo `protobuf:"bytes,8,opt,name=bridge_info,json=bridgeInfo,proto3" json:"bridge_info,omitempty"` + Exported bool `protobuf:"varint,9,opt,name=exported,proto3" json:"exported,omitempty"` } func (x *GenesisState) Reset() { @@ -1776,20 +1496,6 @@ func (x *GenesisState) GetValidators() []*Validator { return nil } -func (x *GenesisState) GetPendingDeposits() []*PendingDeposits { - if x != nil { - return x.PendingDeposits - } - return nil -} - -func (x *GenesisState) GetWithdrawalCommitments() []*WithdrawalCommitment { - if x != nil { - return x.WithdrawalCommitments - } - return nil -} - func (x *GenesisState) GetNextL2Sequence() uint64 { if x != nil { return x.NextL2Sequence @@ -1876,7 +1582,7 @@ var file_opinit_opchild_v1_genesis_proto_rawDesc = []byte{ 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf0, 0x04, 0x0a, 0x0c, 0x47, 0x65, 0x6e, 0x65, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xab, 0x03, 0x0a, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3c, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, @@ -1892,50 +1598,38 @@ var file_opinit_opchild_v1_genesis_proto_rawDesc = []byte{ 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x58, 0x0a, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x73, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0f, - 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x73, 0x12, - 0x69, 0x0a, 0x16, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x5f, 0x63, 0x6f, - 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x43, 0x6f, - 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, - 0xb0, 0x2a, 0x01, 0x52, 0x15, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x43, - 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, - 0x78, 0x74, 0x5f, 0x6c, 0x32, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6e, 0x65, 0x78, 0x74, 0x4c, 0x32, 0x53, 0x65, 0x71, 0x75, - 0x65, 0x6e, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6c, 0x31, 0x5f, - 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, - 0x6e, 0x65, 0x78, 0x74, 0x4c, 0x31, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x3e, - 0x0a, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, - 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, - 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x22, 0x68, 0x0a, 0x12, 0x4c, 0x61, - 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6f, 0x77, 0x65, 0x72, - 0x12, 0x32, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, - 0xe8, 0xa0, 0x1f, 0x00, 0x42, 0xca, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, - 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x42, 0x0c, - 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3d, - 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, - 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, 0x31, 0xa2, 0x02, 0x03, - 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x63, - 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1d, 0x4f, 0x70, - 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0x5c, - 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x4f, 0x70, - 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x3a, 0x3a, 0x56, - 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6c, 0x32, + 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x0e, 0x6e, 0x65, 0x78, 0x74, 0x4c, 0x32, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, + 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6c, 0x31, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6e, 0x65, 0x78, 0x74, 0x4c, + 0x31, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x3e, 0x0a, 0x0b, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x65, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x22, 0x68, 0x0a, 0x12, 0x4c, 0x61, 0x73, 0x74, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x07, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, + 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x70, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x42, + 0xca, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, + 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, + 0x69, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3d, 0x67, 0x69, 0x74, 0x68, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, + 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x6f, + 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, + 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, + 0x56, 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, + 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1d, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, + 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, + 0x3a, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1952,26 +1646,22 @@ func file_opinit_opchild_v1_genesis_proto_rawDescGZIP() []byte { var file_opinit_opchild_v1_genesis_proto_msgTypes = make([]protoimpl.MessageInfo, 2) var file_opinit_opchild_v1_genesis_proto_goTypes = []interface{}{ - (*GenesisState)(nil), // 0: opinit.opchild.v1.GenesisState - (*LastValidatorPower)(nil), // 1: opinit.opchild.v1.LastValidatorPower - (*Params)(nil), // 2: opinit.opchild.v1.Params - (*Validator)(nil), // 3: opinit.opchild.v1.Validator - (*PendingDeposits)(nil), // 4: opinit.opchild.v1.PendingDeposits - (*WithdrawalCommitment)(nil), // 5: opinit.opchild.v1.WithdrawalCommitment - (*BridgeInfo)(nil), // 6: opinit.opchild.v1.BridgeInfo + (*GenesisState)(nil), // 0: opinit.opchild.v1.GenesisState + (*LastValidatorPower)(nil), // 1: opinit.opchild.v1.LastValidatorPower + (*Params)(nil), // 2: opinit.opchild.v1.Params + (*Validator)(nil), // 3: opinit.opchild.v1.Validator + (*BridgeInfo)(nil), // 4: opinit.opchild.v1.BridgeInfo } var file_opinit_opchild_v1_genesis_proto_depIdxs = []int32{ 2, // 0: opinit.opchild.v1.GenesisState.params:type_name -> opinit.opchild.v1.Params 1, // 1: opinit.opchild.v1.GenesisState.last_validator_powers:type_name -> opinit.opchild.v1.LastValidatorPower 3, // 2: opinit.opchild.v1.GenesisState.validators:type_name -> opinit.opchild.v1.Validator - 4, // 3: opinit.opchild.v1.GenesisState.pending_deposits:type_name -> opinit.opchild.v1.PendingDeposits - 5, // 4: opinit.opchild.v1.GenesisState.withdrawal_commitments:type_name -> opinit.opchild.v1.WithdrawalCommitment - 6, // 5: opinit.opchild.v1.GenesisState.bridge_info:type_name -> opinit.opchild.v1.BridgeInfo - 6, // [6:6] is the sub-list for method output_type - 6, // [6:6] is the sub-list for method input_type - 6, // [6:6] is the sub-list for extension type_name - 6, // [6:6] is the sub-list for extension extendee - 0, // [0:6] is the sub-list for field type_name + 4, // 3: opinit.opchild.v1.GenesisState.bridge_info:type_name -> opinit.opchild.v1.BridgeInfo + 4, // [4:4] is the sub-list for method output_type + 4, // [4:4] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name } func init() { file_opinit_opchild_v1_genesis_proto_init() } diff --git a/api/opinit/opchild/v1/query.pulsar.go b/api/opinit/opchild/v1/query.pulsar.go index 4d4d98fe..a27d9f72 100644 --- a/api/opinit/opchild/v1/query.pulsar.go +++ b/api/opinit/opchild/v1/query.pulsar.go @@ -2,7 +2,6 @@ package opchildv1 import ( - v1 "buf.build/gen/go/cometbft/cometbft/protocolbuffers/go/cometbft/crypto/v1" _ "cosmossdk.io/api/amino" v1beta1 "cosmossdk.io/api/cosmos/base/query/v1beta1" _ "cosmossdk.io/api/cosmos/base/v1beta1" @@ -5825,990 +5824,6 @@ func (x *fastReflection_QueryBaseDenomResponse) ProtoMethods() *protoiface.Metho } } -var ( - md_QueryForceWithdrawalProofsRequest protoreflect.MessageDescriptor - fd_QueryForceWithdrawalProofsRequest_sequence protoreflect.FieldDescriptor -) - -func init() { - file_opinit_opchild_v1_query_proto_init() - md_QueryForceWithdrawalProofsRequest = File_opinit_opchild_v1_query_proto.Messages().ByName("QueryForceWithdrawalProofsRequest") - fd_QueryForceWithdrawalProofsRequest_sequence = md_QueryForceWithdrawalProofsRequest.Fields().ByName("sequence") -} - -var _ protoreflect.Message = (*fastReflection_QueryForceWithdrawalProofsRequest)(nil) - -type fastReflection_QueryForceWithdrawalProofsRequest QueryForceWithdrawalProofsRequest - -func (x *QueryForceWithdrawalProofsRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryForceWithdrawalProofsRequest)(x) -} - -func (x *QueryForceWithdrawalProofsRequest) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_opchild_v1_query_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -var _fastReflection_QueryForceWithdrawalProofsRequest_messageType fastReflection_QueryForceWithdrawalProofsRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryForceWithdrawalProofsRequest_messageType{} - -type fastReflection_QueryForceWithdrawalProofsRequest_messageType struct{} - -func (x fastReflection_QueryForceWithdrawalProofsRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryForceWithdrawalProofsRequest)(nil) -} -func (x fastReflection_QueryForceWithdrawalProofsRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryForceWithdrawalProofsRequest) -} -func (x fastReflection_QueryForceWithdrawalProofsRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryForceWithdrawalProofsRequest -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryForceWithdrawalProofsRequest -} - -// Type returns the message type, which encapsulates both Go and protobuf -// type information. If the Go type information is not needed, -// it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryForceWithdrawalProofsRequest_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) New() protoreflect.Message { - return new(fastReflection_QueryForceWithdrawalProofsRequest) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Interface() protoreflect.ProtoMessage { - return (*QueryForceWithdrawalProofsRequest)(x) -} - -// Range iterates over every populated field in an undefined order, -// calling f for each field descriptor and value encountered. -// Range returns immediately if f returns false. -// While iterating, mutating operations may only be performed -// on the current field descriptor. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Sequence != uint64(0) { - value := protoreflect.ValueOfUint64(x.Sequence) - if !f(fd_QueryForceWithdrawalProofsRequest_sequence, value) { - return - } - } -} - -// Has reports whether a field is populated. -// -// Some fields have the property of nullability where it is possible to -// distinguish between the default value of a field and whether the field -// was explicitly populated with the default value. Singular message fields, -// member fields of a oneof, and proto2 scalar fields are nullable. Such -// fields are populated only if explicitly set. -// -// In other cases (aside from the nullable cases above), -// a proto3 scalar field is populated if it contains a non-zero value, and -// a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsRequest.sequence": - return x.Sequence != uint64(0) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsRequest")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsRequest does not contain field %s", fd.FullName())) - } -} - -// Clear clears the field such that a subsequent Has call reports false. -// -// Clearing an extension field clears both the extension type and value -// associated with the given field number. -// -// Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsRequest.sequence": - x.Sequence = uint64(0) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsRequest")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsRequest does not contain field %s", fd.FullName())) - } -} - -// Get retrieves the value for a field. -// -// For unpopulated scalars, it returns the default value, where -// the default value of a bytes scalar is guaranteed to be a copy. -// For unpopulated composite types, it returns an empty, read-only view -// of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsRequest.sequence": - value := x.Sequence - return protoreflect.ValueOfUint64(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsRequest")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsRequest does not contain field %s", descriptor.FullName())) - } -} - -// Set stores the value for a field. -// -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType. -// When setting a composite type, it is unspecified whether the stored value -// aliases the source's memory in any way. If the composite value is an -// empty, read-only value, then it panics. -// -// Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsRequest.sequence": - x.Sequence = value.Uint() - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsRequest")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsRequest does not contain field %s", fd.FullName())) - } -} - -// Mutable returns a mutable reference to a composite type. -// -// If the field is unpopulated, it may allocate a composite value. -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType -// if not already stored. -// It panics if the field does not contain a composite type. -// -// Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsRequest.sequence": - panic(fmt.Errorf("field sequence of message opinit.opchild.v1.QueryForceWithdrawalProofsRequest is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsRequest")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsRequest does not contain field %s", fd.FullName())) - } -} - -// NewField returns a new value that is assignable to the field -// for the given descriptor. For scalars, this returns the default value. -// For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsRequest.sequence": - return protoreflect.ValueOfUint64(uint64(0)) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsRequest")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsRequest does not contain field %s", fd.FullName())) - } -} - -// WhichOneof reports which field within the oneof is populated, -// returning nil if none are populated. -// It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in opinit.opchild.v1.QueryForceWithdrawalProofsRequest", d.FullName())) - } - panic("unreachable") -} - -// GetUnknown retrieves the entire list of unknown fields. -// The caller may only mutate the contents of the RawFields -// if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) GetUnknown() protoreflect.RawFields { - return x.unknownFields -} - -// SetUnknown stores an entire list of unknown fields. -// The raw fields must be syntactically valid according to the wire format. -// An implementation may panic if this is not the case. -// Once stored, the caller must not mutate the content of the RawFields. -// An empty RawFields may be passed to clear the fields. -// -// SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) SetUnknown(fields protoreflect.RawFields) { - x.unknownFields = fields -} - -// IsValid reports whether the message is valid. -// -// An invalid message is an empty, read-only value. -// -// An invalid message often corresponds to a nil pointer of the concrete -// message type, but the details are implementation dependent. -// Validity is not part of the protobuf data model, and may not -// be preserved in marshaling or other operations. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) IsValid() bool { - return x != nil -} - -// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. -// This method may return nil. -// -// The returned methods type is identical to -// "google.golang.org/protobuf/runtime/protoiface".Methods. -// Consult the protoiface package documentation for details. -func (x *fastReflection_QueryForceWithdrawalProofsRequest) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryForceWithdrawalProofsRequest) - if x == nil { - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: 0, - } - } - options := runtime.SizeInputToOptions(input) - _ = options - var n int - var l int - _ = l - if x.Sequence != 0 { - n += 1 + runtime.Sov(uint64(x.Sequence)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryForceWithdrawalProofsRequest) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if x.Sequence != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.Sequence)) - i-- - dAtA[i] = 0x8 - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryForceWithdrawalProofsRequest) - if x == nil { - return protoiface.UnmarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Flags: input.Flags, - }, nil - } - options := runtime.UnmarshalInputToOptions(input) - _ = options - dAtA := input.Buf - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - 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++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryForceWithdrawalProofsRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryForceWithdrawalProofsRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sequence", wireType) - } - x.Sequence = 0 - 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++ - x.Sequence |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_QueryForceWithdrawalProofsResponse protoreflect.MessageDescriptor - fd_QueryForceWithdrawalProofsResponse_commitment_proof protoreflect.FieldDescriptor - fd_QueryForceWithdrawalProofsResponse_app_hash protoreflect.FieldDescriptor - fd_QueryForceWithdrawalProofsResponse_app_hash_proof protoreflect.FieldDescriptor -) - -func init() { - file_opinit_opchild_v1_query_proto_init() - md_QueryForceWithdrawalProofsResponse = File_opinit_opchild_v1_query_proto.Messages().ByName("QueryForceWithdrawalProofsResponse") - fd_QueryForceWithdrawalProofsResponse_commitment_proof = md_QueryForceWithdrawalProofsResponse.Fields().ByName("commitment_proof") - fd_QueryForceWithdrawalProofsResponse_app_hash = md_QueryForceWithdrawalProofsResponse.Fields().ByName("app_hash") - fd_QueryForceWithdrawalProofsResponse_app_hash_proof = md_QueryForceWithdrawalProofsResponse.Fields().ByName("app_hash_proof") -} - -var _ protoreflect.Message = (*fastReflection_QueryForceWithdrawalProofsResponse)(nil) - -type fastReflection_QueryForceWithdrawalProofsResponse QueryForceWithdrawalProofsResponse - -func (x *QueryForceWithdrawalProofsResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryForceWithdrawalProofsResponse)(x) -} - -func (x *QueryForceWithdrawalProofsResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_opchild_v1_query_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -var _fastReflection_QueryForceWithdrawalProofsResponse_messageType fastReflection_QueryForceWithdrawalProofsResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryForceWithdrawalProofsResponse_messageType{} - -type fastReflection_QueryForceWithdrawalProofsResponse_messageType struct{} - -func (x fastReflection_QueryForceWithdrawalProofsResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryForceWithdrawalProofsResponse)(nil) -} -func (x fastReflection_QueryForceWithdrawalProofsResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryForceWithdrawalProofsResponse) -} -func (x fastReflection_QueryForceWithdrawalProofsResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryForceWithdrawalProofsResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryForceWithdrawalProofsResponse -} - -// Type returns the message type, which encapsulates both Go and protobuf -// type information. If the Go type information is not needed, -// it is recommended that the message descriptor be used instead. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryForceWithdrawalProofsResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) New() protoreflect.Message { - return new(fastReflection_QueryForceWithdrawalProofsResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Interface() protoreflect.ProtoMessage { - return (*QueryForceWithdrawalProofsResponse)(x) -} - -// Range iterates over every populated field in an undefined order, -// calling f for each field descriptor and value encountered. -// Range returns immediately if f returns false. -// While iterating, mutating operations may only be performed -// on the current field descriptor. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.CommitmentProof != nil { - value := protoreflect.ValueOfMessage(x.CommitmentProof.ProtoReflect()) - if !f(fd_QueryForceWithdrawalProofsResponse_commitment_proof, value) { - return - } - } - if len(x.AppHash) != 0 { - value := protoreflect.ValueOfBytes(x.AppHash) - if !f(fd_QueryForceWithdrawalProofsResponse_app_hash, value) { - return - } - } - if x.AppHashProof != nil { - value := protoreflect.ValueOfMessage(x.AppHashProof.ProtoReflect()) - if !f(fd_QueryForceWithdrawalProofsResponse_app_hash_proof, value) { - return - } - } -} - -// Has reports whether a field is populated. -// -// Some fields have the property of nullability where it is possible to -// distinguish between the default value of a field and whether the field -// was explicitly populated with the default value. Singular message fields, -// member fields of a oneof, and proto2 scalar fields are nullable. Such -// fields are populated only if explicitly set. -// -// In other cases (aside from the nullable cases above), -// a proto3 scalar field is populated if it contains a non-zero value, and -// a repeated field is populated if it is non-empty. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.commitment_proof": - return x.CommitmentProof != nil - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash": - return len(x.AppHash) != 0 - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash_proof": - return x.AppHashProof != nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsResponse")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsResponse does not contain field %s", fd.FullName())) - } -} - -// Clear clears the field such that a subsequent Has call reports false. -// -// Clearing an extension field clears both the extension type and value -// associated with the given field number. -// -// Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.commitment_proof": - x.CommitmentProof = nil - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash": - x.AppHash = nil - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash_proof": - x.AppHashProof = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsResponse")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsResponse does not contain field %s", fd.FullName())) - } -} - -// Get retrieves the value for a field. -// -// For unpopulated scalars, it returns the default value, where -// the default value of a bytes scalar is guaranteed to be a copy. -// For unpopulated composite types, it returns an empty, read-only view -// of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.commitment_proof": - value := x.CommitmentProof - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash": - value := x.AppHash - return protoreflect.ValueOfBytes(value) - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash_proof": - value := x.AppHashProof - return protoreflect.ValueOfMessage(value.ProtoReflect()) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsResponse")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsResponse does not contain field %s", descriptor.FullName())) - } -} - -// Set stores the value for a field. -// -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType. -// When setting a composite type, it is unspecified whether the stored value -// aliases the source's memory in any way. If the composite value is an -// empty, read-only value, then it panics. -// -// Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.commitment_proof": - x.CommitmentProof = value.Message().Interface().(*v1.ProofOps) - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash": - x.AppHash = value.Bytes() - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash_proof": - x.AppHashProof = value.Message().Interface().(*v1.Proof) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsResponse")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsResponse does not contain field %s", fd.FullName())) - } -} - -// Mutable returns a mutable reference to a composite type. -// -// If the field is unpopulated, it may allocate a composite value. -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType -// if not already stored. -// It panics if the field does not contain a composite type. -// -// Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.commitment_proof": - if x.CommitmentProof == nil { - x.CommitmentProof = new(v1.ProofOps) - } - return protoreflect.ValueOfMessage(x.CommitmentProof.ProtoReflect()) - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash_proof": - if x.AppHashProof == nil { - x.AppHashProof = new(v1.Proof) - } - return protoreflect.ValueOfMessage(x.AppHashProof.ProtoReflect()) - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash": - panic(fmt.Errorf("field app_hash of message opinit.opchild.v1.QueryForceWithdrawalProofsResponse is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsResponse")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsResponse does not contain field %s", fd.FullName())) - } -} - -// NewField returns a new value that is assignable to the field -// for the given descriptor. For scalars, this returns the default value. -// For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.commitment_proof": - m := new(v1.ProofOps) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash": - return protoreflect.ValueOfBytes(nil) - case "opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash_proof": - m := new(v1.Proof) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.QueryForceWithdrawalProofsResponse")) - } - panic(fmt.Errorf("message opinit.opchild.v1.QueryForceWithdrawalProofsResponse does not contain field %s", fd.FullName())) - } -} - -// WhichOneof reports which field within the oneof is populated, -// returning nil if none are populated. -// It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in opinit.opchild.v1.QueryForceWithdrawalProofsResponse", d.FullName())) - } - panic("unreachable") -} - -// GetUnknown retrieves the entire list of unknown fields. -// The caller may only mutate the contents of the RawFields -// if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) GetUnknown() protoreflect.RawFields { - return x.unknownFields -} - -// SetUnknown stores an entire list of unknown fields. -// The raw fields must be syntactically valid according to the wire format. -// An implementation may panic if this is not the case. -// Once stored, the caller must not mutate the content of the RawFields. -// An empty RawFields may be passed to clear the fields. -// -// SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) SetUnknown(fields protoreflect.RawFields) { - x.unknownFields = fields -} - -// IsValid reports whether the message is valid. -// -// An invalid message is an empty, read-only value. -// -// An invalid message often corresponds to a nil pointer of the concrete -// message type, but the details are implementation dependent. -// Validity is not part of the protobuf data model, and may not -// be preserved in marshaling or other operations. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) IsValid() bool { - return x != nil -} - -// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. -// This method may return nil. -// -// The returned methods type is identical to -// "google.golang.org/protobuf/runtime/protoiface".Methods. -// Consult the protoiface package documentation for details. -func (x *fastReflection_QueryForceWithdrawalProofsResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryForceWithdrawalProofsResponse) - if x == nil { - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: 0, - } - } - options := runtime.SizeInputToOptions(input) - _ = options - var n int - var l int - _ = l - if x.CommitmentProof != nil { - l = options.Size(x.CommitmentProof) - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.AppHash) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.AppHashProof != nil { - l = options.Size(x.AppHashProof) - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryForceWithdrawalProofsResponse) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if x.AppHashProof != nil { - encoded, err := options.Marshal(x.AppHashProof) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x2a - } - if len(x.AppHash) > 0 { - i -= len(x.AppHash) - copy(dAtA[i:], x.AppHash) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.AppHash))) - i-- - dAtA[i] = 0x22 - } - if x.CommitmentProof != nil { - encoded, err := options.Marshal(x.CommitmentProof) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x1a - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryForceWithdrawalProofsResponse) - if x == nil { - return protoiface.UnmarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Flags: input.Flags, - }, nil - } - options := runtime.UnmarshalInputToOptions(input) - _ = options - dAtA := input.Buf - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - 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++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryForceWithdrawalProofsResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryForceWithdrawalProofsResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CommitmentProof", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.CommitmentProof == nil { - x.CommitmentProof = &v1.ProofOps{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.CommitmentProof); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AppHash", wireType) - } - var byteLen 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++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.AppHash = append(x.AppHash[:0], dAtA[iNdEx:postIndex]...) - if x.AppHash == nil { - x.AppHash = []byte{} - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AppHashProof", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.AppHashProof == nil { - x.AppHashProof = &v1.Proof{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.AppHashProof); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.0 @@ -7307,97 +6322,6 @@ func (x *QueryBaseDenomResponse) GetBaseDenom() string { return "" } -// QueryForceWithdrawalProofsRequest is request type for the Query/ForceWithdrawalProofs RPC method. -type QueryForceWithdrawalProofsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // sequence is the sequence number of the withdrawal. - Sequence uint64 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"` -} - -func (x *QueryForceWithdrawalProofsRequest) Reset() { - *x = QueryForceWithdrawalProofsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_opinit_opchild_v1_query_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryForceWithdrawalProofsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryForceWithdrawalProofsRequest) ProtoMessage() {} - -// Deprecated: Use QueryForceWithdrawalProofsRequest.ProtoReflect.Descriptor instead. -func (*QueryForceWithdrawalProofsRequest) Descriptor() ([]byte, []int) { - return file_opinit_opchild_v1_query_proto_rawDescGZIP(), []int{14} -} - -func (x *QueryForceWithdrawalProofsRequest) GetSequence() uint64 { - if x != nil { - return x.Sequence - } - return 0 -} - -// QueryForceWithdrawalProofsResponse is response type for the Query/ForceWithdrawalProofs RPC method. -type QueryForceWithdrawalProofsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // withdrawal commitments and proofs - CommitmentProof *v1.ProofOps `protobuf:"bytes,3,opt,name=commitment_proof,json=commitmentProof,proto3" json:"commitment_proof,omitempty"` - // app hash and proof - AppHash []byte `protobuf:"bytes,4,opt,name=app_hash,json=appHash,proto3" json:"app_hash,omitempty"` - AppHashProof *v1.Proof `protobuf:"bytes,5,opt,name=app_hash_proof,json=appHashProof,proto3" json:"app_hash_proof,omitempty"` -} - -func (x *QueryForceWithdrawalProofsResponse) Reset() { - *x = QueryForceWithdrawalProofsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_opinit_opchild_v1_query_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryForceWithdrawalProofsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryForceWithdrawalProofsResponse) ProtoMessage() {} - -// Deprecated: Use QueryForceWithdrawalProofsResponse.ProtoReflect.Descriptor instead. -func (*QueryForceWithdrawalProofsResponse) Descriptor() ([]byte, []int) { - return file_opinit_opchild_v1_query_proto_rawDescGZIP(), []int{15} -} - -func (x *QueryForceWithdrawalProofsResponse) GetCommitmentProof() *v1.ProofOps { - if x != nil { - return x.CommitmentProof - } - return nil -} - -func (x *QueryForceWithdrawalProofsResponse) GetAppHash() []byte { - if x != nil { - return x.AppHash - } - return nil -} - -func (x *QueryForceWithdrawalProofsResponse) GetAppHashProof() *v1.Proof { - if x != nil { - return x.AppHashProof - } - return nil -} - var File_opinit_opchild_v1_query_proto protoreflect.FileDescriptor var file_opinit_opchild_v1_query_proto_rawDesc = []byte{ @@ -7405,8 +6329,6 @@ var file_opinit_opchild_v1_query_proto_rawDesc = []byte{ 0x2f, 0x76, 0x31, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x63, 0x6f, 0x6d, 0x65, 0x74, 0x62, 0x66, 0x74, 0x2f, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, @@ -7483,122 +6405,87 @@ var file_opinit_opchild_v1_query_proto_rawDesc = []byte{ 0x37, 0x0a, 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, - 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0x3f, 0x0a, 0x21, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, - 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xa8, 0x02, 0x0a, 0x22, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, - 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x6d, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, - 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6d, - 0x65, 0x74, 0x62, 0x66, 0x74, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x76, 0x31, 0x2e, - 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x4f, 0x70, 0x73, 0x42, 0x24, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, - 0x1f, 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, - 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0f, - 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x12, - 0x2e, 0x0a, 0x08, 0x61, 0x70, 0x70, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0c, 0x42, 0x13, 0xf2, 0xde, 0x1f, 0x0f, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x70, 0x70, - 0x5f, 0x68, 0x61, 0x73, 0x68, 0x22, 0x52, 0x07, 0x61, 0x70, 0x70, 0x48, 0x61, 0x73, 0x68, 0x12, - 0x63, 0x0a, 0x0e, 0x61, 0x70, 0x70, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x6f, - 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x6d, 0x65, 0x74, 0x62, - 0x66, 0x74, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, - 0x6f, 0x66, 0x42, 0x22, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x15, 0x79, 0x61, 0x6d, 0x6c, - 0x3a, 0x22, 0x61, 0x70, 0x70, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, - 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0c, 0x61, 0x70, 0x70, 0x48, 0x61, 0x73, 0x68, 0x50, - 0x72, 0x6f, 0x6f, 0x66, 0x32, 0xf1, 0x09, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x8f, - 0x01, 0x0a, 0x0a, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x29, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, - 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x1f, 0x12, 0x1d, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, - 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, - 0x12, 0x9c, 0x01, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x28, - 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, - 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, - 0x12, 0x2d, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, - 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x7b, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x7d, 0x12, - 0x90, 0x01, 0x0a, 0x0a, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, - 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, - 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x6e, - 0x66, 0x6f, 0x12, 0x7f, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x25, 0x2e, 0x6f, + 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x32, 0xab, 0x08, 0x0a, 0x05, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x12, 0x8f, 0x01, 0x0a, 0x0a, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x73, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, + 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, - 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x88, 0xe7, 0xb0, - 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, - 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x12, 0xa1, 0x01, 0x0a, 0x0e, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x31, 0x53, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, - 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x31, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, - 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4e, - 0x65, 0x78, 0x74, 0x4c, 0x31, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x25, 0x12, 0x23, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6c, 0x31, 0x5f, 0x73, - 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0xa1, 0x01, 0x0a, 0x0e, 0x4e, 0x65, 0x78, 0x74, - 0x4c, 0x32, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x2e, 0x6f, 0x70, 0x69, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, + 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x73, 0x12, 0x9c, 0x01, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, + 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6f, + 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x2f, 0x12, 0x2d, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, + 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x2f, 0x7b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x7d, 0x12, 0x90, 0x01, 0x0a, 0x0a, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, + 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x88, 0xe7, 0xb0, 0x2a, 0x01, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, + 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x7f, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x12, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, + 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, + 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x26, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x6f, + 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, + 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0xa1, 0x01, 0x0a, 0x0e, 0x4e, 0x65, 0x78, 0x74, + 0x4c, 0x31, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x32, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x75, 0x65, 0x72, 0x79, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x31, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x32, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x72, 0x79, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x31, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x6e, 0x65, 0x78, 0x74, 0x5f, - 0x6c, 0x32, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x94, 0x01, 0x0a, 0x09, - 0x42, 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x6e, - 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, - 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, - 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, - 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f, 0x6f, 0x70, - 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, - 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x2f, 0x7b, 0x64, 0x65, 0x6e, 0x6f, - 0x6d, 0x7d, 0x12, 0xc3, 0x01, 0x0a, 0x15, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, - 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x12, 0x34, 0x2e, 0x6f, - 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x64, - 0x72, 0x61, 0x77, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x63, - 0x65, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x6f, 0x66, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x88, 0xe7, 0xb0, 0x2a, 0x01, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, - 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x77, 0x69, 0x74, 0x68, 0x64, - 0x72, 0x61, 0x77, 0x61, 0x6c, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, - 0x7d, 0x2f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x42, 0xc8, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, + 0x6c, 0x31, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0xa1, 0x01, 0x0a, 0x0e, + 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x32, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, - 0x5a, 0x3d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, - 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, - 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, - 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, 0x31, 0xa2, - 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, - 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, - 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1d, - 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, - 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, - 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x3a, - 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x32, 0x53, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4e, 0x65, 0x78, 0x74, 0x4c, 0x32, 0x53, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x88, + 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x6f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x6e, + 0x65, 0x78, 0x74, 0x5f, 0x6c, 0x32, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, + 0x94, 0x01, 0x0a, 0x09, 0x42, 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x28, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, + 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x42, 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x32, 0x88, 0xe7, 0xb0, 0x2a, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, + 0x25, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, + 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x2f, 0x7b, + 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x7d, 0x42, 0xc8, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, + 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, + 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3d, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, + 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, + 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, + 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, 0x31, 0xa2, 0x02, 0x03, + 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x63, + 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, + 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1d, 0x4f, 0x70, + 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0x5c, + 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x4f, 0x70, + 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x3a, 0x3a, 0x56, + 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -7613,62 +6500,54 @@ func file_opinit_opchild_v1_query_proto_rawDescGZIP() []byte { return file_opinit_opchild_v1_query_proto_rawDescData } -var file_opinit_opchild_v1_query_proto_msgTypes = make([]protoimpl.MessageInfo, 16) +var file_opinit_opchild_v1_query_proto_msgTypes = make([]protoimpl.MessageInfo, 14) var file_opinit_opchild_v1_query_proto_goTypes = []interface{}{ - (*QueryValidatorsRequest)(nil), // 0: opinit.opchild.v1.QueryValidatorsRequest - (*QueryValidatorsResponse)(nil), // 1: opinit.opchild.v1.QueryValidatorsResponse - (*QueryValidatorRequest)(nil), // 2: opinit.opchild.v1.QueryValidatorRequest - (*QueryValidatorResponse)(nil), // 3: opinit.opchild.v1.QueryValidatorResponse - (*QueryBridgeInfoRequest)(nil), // 4: opinit.opchild.v1.QueryBridgeInfoRequest - (*QueryBridgeInfoResponse)(nil), // 5: opinit.opchild.v1.QueryBridgeInfoResponse - (*QueryParamsRequest)(nil), // 6: opinit.opchild.v1.QueryParamsRequest - (*QueryParamsResponse)(nil), // 7: opinit.opchild.v1.QueryParamsResponse - (*QueryNextL1SequenceRequest)(nil), // 8: opinit.opchild.v1.QueryNextL1SequenceRequest - (*QueryNextL1SequenceResponse)(nil), // 9: opinit.opchild.v1.QueryNextL1SequenceResponse - (*QueryNextL2SequenceRequest)(nil), // 10: opinit.opchild.v1.QueryNextL2SequenceRequest - (*QueryNextL2SequenceResponse)(nil), // 11: opinit.opchild.v1.QueryNextL2SequenceResponse - (*QueryBaseDenomRequest)(nil), // 12: opinit.opchild.v1.QueryBaseDenomRequest - (*QueryBaseDenomResponse)(nil), // 13: opinit.opchild.v1.QueryBaseDenomResponse - (*QueryForceWithdrawalProofsRequest)(nil), // 14: opinit.opchild.v1.QueryForceWithdrawalProofsRequest - (*QueryForceWithdrawalProofsResponse)(nil), // 15: opinit.opchild.v1.QueryForceWithdrawalProofsResponse - (*v1beta1.PageRequest)(nil), // 16: cosmos.base.query.v1beta1.PageRequest - (*Validator)(nil), // 17: opinit.opchild.v1.Validator - (*v1beta1.PageResponse)(nil), // 18: cosmos.base.query.v1beta1.PageResponse - (*BridgeInfo)(nil), // 19: opinit.opchild.v1.BridgeInfo - (*Params)(nil), // 20: opinit.opchild.v1.Params - (*v1.ProofOps)(nil), // 21: cometbft.crypto.v1.ProofOps - (*v1.Proof)(nil), // 22: cometbft.crypto.v1.Proof + (*QueryValidatorsRequest)(nil), // 0: opinit.opchild.v1.QueryValidatorsRequest + (*QueryValidatorsResponse)(nil), // 1: opinit.opchild.v1.QueryValidatorsResponse + (*QueryValidatorRequest)(nil), // 2: opinit.opchild.v1.QueryValidatorRequest + (*QueryValidatorResponse)(nil), // 3: opinit.opchild.v1.QueryValidatorResponse + (*QueryBridgeInfoRequest)(nil), // 4: opinit.opchild.v1.QueryBridgeInfoRequest + (*QueryBridgeInfoResponse)(nil), // 5: opinit.opchild.v1.QueryBridgeInfoResponse + (*QueryParamsRequest)(nil), // 6: opinit.opchild.v1.QueryParamsRequest + (*QueryParamsResponse)(nil), // 7: opinit.opchild.v1.QueryParamsResponse + (*QueryNextL1SequenceRequest)(nil), // 8: opinit.opchild.v1.QueryNextL1SequenceRequest + (*QueryNextL1SequenceResponse)(nil), // 9: opinit.opchild.v1.QueryNextL1SequenceResponse + (*QueryNextL2SequenceRequest)(nil), // 10: opinit.opchild.v1.QueryNextL2SequenceRequest + (*QueryNextL2SequenceResponse)(nil), // 11: opinit.opchild.v1.QueryNextL2SequenceResponse + (*QueryBaseDenomRequest)(nil), // 12: opinit.opchild.v1.QueryBaseDenomRequest + (*QueryBaseDenomResponse)(nil), // 13: opinit.opchild.v1.QueryBaseDenomResponse + (*v1beta1.PageRequest)(nil), // 14: cosmos.base.query.v1beta1.PageRequest + (*Validator)(nil), // 15: opinit.opchild.v1.Validator + (*v1beta1.PageResponse)(nil), // 16: cosmos.base.query.v1beta1.PageResponse + (*BridgeInfo)(nil), // 17: opinit.opchild.v1.BridgeInfo + (*Params)(nil), // 18: opinit.opchild.v1.Params } var file_opinit_opchild_v1_query_proto_depIdxs = []int32{ - 16, // 0: opinit.opchild.v1.QueryValidatorsRequest.pagination:type_name -> cosmos.base.query.v1beta1.PageRequest - 17, // 1: opinit.opchild.v1.QueryValidatorsResponse.validators:type_name -> opinit.opchild.v1.Validator - 18, // 2: opinit.opchild.v1.QueryValidatorsResponse.pagination:type_name -> cosmos.base.query.v1beta1.PageResponse - 17, // 3: opinit.opchild.v1.QueryValidatorResponse.validator:type_name -> opinit.opchild.v1.Validator - 19, // 4: opinit.opchild.v1.QueryBridgeInfoResponse.bridge_info:type_name -> opinit.opchild.v1.BridgeInfo - 20, // 5: opinit.opchild.v1.QueryParamsResponse.params:type_name -> opinit.opchild.v1.Params - 21, // 6: opinit.opchild.v1.QueryForceWithdrawalProofsResponse.commitment_proof:type_name -> cometbft.crypto.v1.ProofOps - 22, // 7: opinit.opchild.v1.QueryForceWithdrawalProofsResponse.app_hash_proof:type_name -> cometbft.crypto.v1.Proof - 0, // 8: opinit.opchild.v1.Query.Validators:input_type -> opinit.opchild.v1.QueryValidatorsRequest - 2, // 9: opinit.opchild.v1.Query.Validator:input_type -> opinit.opchild.v1.QueryValidatorRequest - 4, // 10: opinit.opchild.v1.Query.BridgeInfo:input_type -> opinit.opchild.v1.QueryBridgeInfoRequest - 6, // 11: opinit.opchild.v1.Query.Params:input_type -> opinit.opchild.v1.QueryParamsRequest - 8, // 12: opinit.opchild.v1.Query.NextL1Sequence:input_type -> opinit.opchild.v1.QueryNextL1SequenceRequest - 10, // 13: opinit.opchild.v1.Query.NextL2Sequence:input_type -> opinit.opchild.v1.QueryNextL2SequenceRequest - 12, // 14: opinit.opchild.v1.Query.BaseDenom:input_type -> opinit.opchild.v1.QueryBaseDenomRequest - 14, // 15: opinit.opchild.v1.Query.ForceWithdrawalProofs:input_type -> opinit.opchild.v1.QueryForceWithdrawalProofsRequest - 1, // 16: opinit.opchild.v1.Query.Validators:output_type -> opinit.opchild.v1.QueryValidatorsResponse - 3, // 17: opinit.opchild.v1.Query.Validator:output_type -> opinit.opchild.v1.QueryValidatorResponse - 5, // 18: opinit.opchild.v1.Query.BridgeInfo:output_type -> opinit.opchild.v1.QueryBridgeInfoResponse - 7, // 19: opinit.opchild.v1.Query.Params:output_type -> opinit.opchild.v1.QueryParamsResponse - 9, // 20: opinit.opchild.v1.Query.NextL1Sequence:output_type -> opinit.opchild.v1.QueryNextL1SequenceResponse - 11, // 21: opinit.opchild.v1.Query.NextL2Sequence:output_type -> opinit.opchild.v1.QueryNextL2SequenceResponse - 13, // 22: opinit.opchild.v1.Query.BaseDenom:output_type -> opinit.opchild.v1.QueryBaseDenomResponse - 15, // 23: opinit.opchild.v1.Query.ForceWithdrawalProofs:output_type -> opinit.opchild.v1.QueryForceWithdrawalProofsResponse - 16, // [16:24] is the sub-list for method output_type - 8, // [8:16] is the sub-list for method input_type - 8, // [8:8] is the sub-list for extension type_name - 8, // [8:8] is the sub-list for extension extendee - 0, // [0:8] is the sub-list for field type_name + 14, // 0: opinit.opchild.v1.QueryValidatorsRequest.pagination:type_name -> cosmos.base.query.v1beta1.PageRequest + 15, // 1: opinit.opchild.v1.QueryValidatorsResponse.validators:type_name -> opinit.opchild.v1.Validator + 16, // 2: opinit.opchild.v1.QueryValidatorsResponse.pagination:type_name -> cosmos.base.query.v1beta1.PageResponse + 15, // 3: opinit.opchild.v1.QueryValidatorResponse.validator:type_name -> opinit.opchild.v1.Validator + 17, // 4: opinit.opchild.v1.QueryBridgeInfoResponse.bridge_info:type_name -> opinit.opchild.v1.BridgeInfo + 18, // 5: opinit.opchild.v1.QueryParamsResponse.params:type_name -> opinit.opchild.v1.Params + 0, // 6: opinit.opchild.v1.Query.Validators:input_type -> opinit.opchild.v1.QueryValidatorsRequest + 2, // 7: opinit.opchild.v1.Query.Validator:input_type -> opinit.opchild.v1.QueryValidatorRequest + 4, // 8: opinit.opchild.v1.Query.BridgeInfo:input_type -> opinit.opchild.v1.QueryBridgeInfoRequest + 6, // 9: opinit.opchild.v1.Query.Params:input_type -> opinit.opchild.v1.QueryParamsRequest + 8, // 10: opinit.opchild.v1.Query.NextL1Sequence:input_type -> opinit.opchild.v1.QueryNextL1SequenceRequest + 10, // 11: opinit.opchild.v1.Query.NextL2Sequence:input_type -> opinit.opchild.v1.QueryNextL2SequenceRequest + 12, // 12: opinit.opchild.v1.Query.BaseDenom:input_type -> opinit.opchild.v1.QueryBaseDenomRequest + 1, // 13: opinit.opchild.v1.Query.Validators:output_type -> opinit.opchild.v1.QueryValidatorsResponse + 3, // 14: opinit.opchild.v1.Query.Validator:output_type -> opinit.opchild.v1.QueryValidatorResponse + 5, // 15: opinit.opchild.v1.Query.BridgeInfo:output_type -> opinit.opchild.v1.QueryBridgeInfoResponse + 7, // 16: opinit.opchild.v1.Query.Params:output_type -> opinit.opchild.v1.QueryParamsResponse + 9, // 17: opinit.opchild.v1.Query.NextL1Sequence:output_type -> opinit.opchild.v1.QueryNextL1SequenceResponse + 11, // 18: opinit.opchild.v1.Query.NextL2Sequence:output_type -> opinit.opchild.v1.QueryNextL2SequenceResponse + 13, // 19: opinit.opchild.v1.Query.BaseDenom:output_type -> opinit.opchild.v1.QueryBaseDenomResponse + 13, // [13:20] is the sub-list for method output_type + 6, // [6:13] is the sub-list for method input_type + 6, // [6:6] is the sub-list for extension type_name + 6, // [6:6] is the sub-list for extension extendee + 0, // [0:6] is the sub-list for field type_name } func init() { file_opinit_opchild_v1_query_proto_init() } @@ -7846,30 +6725,6 @@ func file_opinit_opchild_v1_query_proto_init() { return nil } } - file_opinit_opchild_v1_query_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryForceWithdrawalProofsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_opinit_opchild_v1_query_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryForceWithdrawalProofsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } } type x struct{} out := protoimpl.TypeBuilder{ @@ -7877,7 +6732,7 @@ func file_opinit_opchild_v1_query_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_opinit_opchild_v1_query_proto_rawDesc, NumEnums: 0, - NumMessages: 16, + NumMessages: 14, NumExtensions: 0, NumServices: 1, }, diff --git a/api/opinit/opchild/v1/query_grpc.pb.go b/api/opinit/opchild/v1/query_grpc.pb.go index 07ec2410..32fb8a10 100644 --- a/api/opinit/opchild/v1/query_grpc.pb.go +++ b/api/opinit/opchild/v1/query_grpc.pb.go @@ -19,14 +19,13 @@ import ( const _ = grpc.SupportPackageIsVersion7 const ( - Query_Validators_FullMethodName = "/opinit.opchild.v1.Query/Validators" - Query_Validator_FullMethodName = "/opinit.opchild.v1.Query/Validator" - Query_BridgeInfo_FullMethodName = "/opinit.opchild.v1.Query/BridgeInfo" - Query_Params_FullMethodName = "/opinit.opchild.v1.Query/Params" - Query_NextL1Sequence_FullMethodName = "/opinit.opchild.v1.Query/NextL1Sequence" - Query_NextL2Sequence_FullMethodName = "/opinit.opchild.v1.Query/NextL2Sequence" - Query_BaseDenom_FullMethodName = "/opinit.opchild.v1.Query/BaseDenom" - Query_ForceWithdrawalProofs_FullMethodName = "/opinit.opchild.v1.Query/ForceWithdrawalProofs" + Query_Validators_FullMethodName = "/opinit.opchild.v1.Query/Validators" + Query_Validator_FullMethodName = "/opinit.opchild.v1.Query/Validator" + Query_BridgeInfo_FullMethodName = "/opinit.opchild.v1.Query/BridgeInfo" + Query_Params_FullMethodName = "/opinit.opchild.v1.Query/Params" + Query_NextL1Sequence_FullMethodName = "/opinit.opchild.v1.Query/NextL1Sequence" + Query_NextL2Sequence_FullMethodName = "/opinit.opchild.v1.Query/NextL2Sequence" + Query_BaseDenom_FullMethodName = "/opinit.opchild.v1.Query/BaseDenom" ) // QueryClient is the client API for Query service. @@ -49,7 +48,6 @@ type QueryClient interface { // NextL2Sequence queries the next l2 sequence number. NextL2Sequence(ctx context.Context, in *QueryNextL2SequenceRequest, opts ...grpc.CallOption) (*QueryNextL2SequenceResponse, error) BaseDenom(ctx context.Context, in *QueryBaseDenomRequest, opts ...grpc.CallOption) (*QueryBaseDenomResponse, error) - ForceWithdrawalProofs(ctx context.Context, in *QueryForceWithdrawalProofsRequest, opts ...grpc.CallOption) (*QueryForceWithdrawalProofsResponse, error) } type queryClient struct { @@ -123,15 +121,6 @@ func (c *queryClient) BaseDenom(ctx context.Context, in *QueryBaseDenomRequest, return out, nil } -func (c *queryClient) ForceWithdrawalProofs(ctx context.Context, in *QueryForceWithdrawalProofsRequest, opts ...grpc.CallOption) (*QueryForceWithdrawalProofsResponse, error) { - out := new(QueryForceWithdrawalProofsResponse) - err := c.cc.Invoke(ctx, Query_ForceWithdrawalProofs_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - // QueryServer is the server API for Query service. // All implementations must embed UnimplementedQueryServer // for forward compatibility @@ -152,7 +141,6 @@ type QueryServer interface { // NextL2Sequence queries the next l2 sequence number. NextL2Sequence(context.Context, *QueryNextL2SequenceRequest) (*QueryNextL2SequenceResponse, error) BaseDenom(context.Context, *QueryBaseDenomRequest) (*QueryBaseDenomResponse, error) - ForceWithdrawalProofs(context.Context, *QueryForceWithdrawalProofsRequest) (*QueryForceWithdrawalProofsResponse, error) mustEmbedUnimplementedQueryServer() } @@ -181,9 +169,6 @@ func (UnimplementedQueryServer) NextL2Sequence(context.Context, *QueryNextL2Sequ func (UnimplementedQueryServer) BaseDenom(context.Context, *QueryBaseDenomRequest) (*QueryBaseDenomResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BaseDenom not implemented") } -func (UnimplementedQueryServer) ForceWithdrawalProofs(context.Context, *QueryForceWithdrawalProofsRequest) (*QueryForceWithdrawalProofsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ForceWithdrawalProofs not implemented") -} func (UnimplementedQueryServer) mustEmbedUnimplementedQueryServer() {} // UnsafeQueryServer may be embedded to opt out of forward compatibility for this service. @@ -323,24 +308,6 @@ func _Query_BaseDenom_Handler(srv interface{}, ctx context.Context, dec func(int return interceptor(ctx, in, info, handler) } -func _Query_ForceWithdrawalProofs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryForceWithdrawalProofsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).ForceWithdrawalProofs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: Query_ForceWithdrawalProofs_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).ForceWithdrawalProofs(ctx, req.(*QueryForceWithdrawalProofsRequest)) - } - return interceptor(ctx, in, info, handler) -} - // Query_ServiceDesc is the grpc.ServiceDesc for Query service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -376,10 +343,6 @@ var Query_ServiceDesc = grpc.ServiceDesc{ MethodName: "BaseDenom", Handler: _Query_BaseDenom_Handler, }, - { - MethodName: "ForceWithdrawalProofs", - Handler: _Query_ForceWithdrawalProofs_Handler, - }, }, Streams: []grpc.StreamDesc{}, Metadata: "opinit/opchild/v1/query.proto", diff --git a/api/opinit/opchild/v1/tx.pulsar.go b/api/opinit/opchild/v1/tx.pulsar.go index 4c6a9019..666f91f7 100644 --- a/api/opinit/opchild/v1/tx.pulsar.go +++ b/api/opinit/opchild/v1/tx.pulsar.go @@ -8727,7 +8727,7 @@ type MsgFinalizeTokenDeposit struct { Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` // from is l1 sender address From string `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"` - // to is l2 recipient address + // to is l2 recipient address or "hook" To string `protobuf:"bytes,3,opt,name=to,proto3" json:"to,omitempty"` // amount is the coin amount to deposit. Amount *v1beta1.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"` @@ -9392,218 +9392,215 @@ var file_opinit_opchild_v1_tx_proto_rawDesc = []byte{ 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x1a, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa6, 0x03, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8c, 0x03, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x73, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x04, 0x66, 0x72, 0x6f, - 0x6d, 0x12, 0x28, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, - 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x4d, 0x0a, 0x06, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 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, 0x1a, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x0d, - 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa8, 0xe7, 0xb0, - 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x1d, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x09, 0xc8, 0xde, 0x1f, - 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x2f, 0x82, 0xe7, - 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1f, 0x6f, 0x70, - 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, - 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x22, 0x60, 0x0a, - 0x1f, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x3d, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0xfb, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x12, 0x30, - 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, - 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x12, 0x28, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, - 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x4d, 0x0a, 0x06, 0x61, 0x6d, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 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, 0x1a, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x0d, 0x79, - 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, - 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x32, 0x82, 0xe7, 0xb0, 0x2a, 0x06, - 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x22, 0x6f, 0x70, 0x63, 0x68, 0x69, - 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x22, 0x40, 0x0a, - 0x22, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, - 0xba, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, - 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x11, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, + 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x28, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x02, 0x74, + 0x6f, 0x12, 0x4d, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 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, 0x1a, 0xc8, 0xde, + 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x68, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x6e, + 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, + 0x6e, 0x6f, 0x6d, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x0c, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x3a, 0x2f, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, + 0xe7, 0xb0, 0x2a, 0x1f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x46, + 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x22, 0x60, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, + 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, + 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xe1, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, + 0x61, 0x77, 0x61, 0x6c, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x46, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x42, 0x18, 0xca, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, - 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x3a, 0x32, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, - 0x1f, 0x00, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x8a, 0xe7, 0xb0, 0x2a, 0x17, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x19, 0x0a, 0x17, - 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x52, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x4a, + 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x06, + 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x4d, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x04, 0x20, 0x01, 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, 0x1a, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, + 0x22, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x32, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x22, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, + 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, + 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x22, 0x4d, 0x73, 0x67, + 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, + 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xba, 0x02, 0x0a, 0x0f, + 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x6d, + 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, + 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x46, 0x0a, 0x06, + 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, + 0x6e, 0x79, 0x42, 0x18, 0xca, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x75, + 0x62, 0x6b, 0x65, 0x79, 0x3a, 0x32, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x82, 0xe7, + 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, + 0x17, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x41, + 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, + 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, + 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x2d, 0x82, + 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, + 0x2a, 0x1a, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1c, 0x0a, 0x1a, + 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x0f, 0x4d, + 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, - 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x11, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, - 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x3a, 0x2d, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x1a, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x1c, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbc, - 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, - 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, - 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x3a, 0x2a, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x17, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, - 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, - 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbc, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, - 0x53, 0x70, 0x65, 0x6e, 0x64, 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x4a, 0x0a, 0x09, - 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x36, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69, - 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, - 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, - 0x12, 0x79, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 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, 0x46, 0xc8, 0xde, 0x1f, - 0x00, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x22, 0xaa, 0xdf, 0x1f, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, - 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, - 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x2a, 0x82, 0xe7, 0xb0, - 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x17, - 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, - 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x53, 0x70, - 0x65, 0x6e, 0x64, 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0xbb, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, - 0x3a, 0x22, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, + 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x06, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x2a, 0x82, + 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, + 0x2a, 0x17, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbc, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, + 0x64, 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, + 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, + 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x69, 0x74, 0x79, 0x12, 0x36, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x06, 0x68, 0x65, 0x69, - 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x05, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, - 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, - 0x01, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x27, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x17, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, - 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xba, 0x07, 0x0a, 0x03, - 0x4d, 0x73, 0x67, 0x12, 0x67, 0x0a, 0x0f, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, - 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x78, - 0x65, 0x63, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x2d, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, 0x0d, - 0x53, 0x65, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x1a, 0x2b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x76, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, + 0x67, 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x79, 0x0a, 0x06, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 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, 0x46, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, + 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xaa, 0xdf, + 0x1f, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, + 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x2a, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x17, 0x6f, 0x70, 0x63, 0x68, + 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x46, 0x65, 0x65, 0x50, + 0x6f, 0x6f, 0x6c, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x46, + 0x65, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbb, + 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, + 0x6c, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x29, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x73, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x73, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x05, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x68, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0c, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x3a, 0x27, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x8a, 0xe7, 0xb0, 0x2a, 0x17, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x4d, 0x73, 0x67, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x22, 0x19, 0x0a, 0x17, + 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xba, 0x07, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, + 0x67, 0x0a, 0x0f, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x73, 0x12, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, + 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, + 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x42, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, + 0x67, 0x53, 0x65, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x2b, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x76, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x1a, 0x32, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, + 0x73, 0x69, 0x74, 0x12, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, - 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x17, 0x49, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, - 0x61, 0x6c, 0x12, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, - 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, - 0x6c, 0x1a, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, - 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, - 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, + 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x1a, + 0x32, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x17, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x12, 0x2d, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x1a, 0x35, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, + 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x1a, 0x2a, 0x2e, 0x6f, - 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x67, 0x0a, 0x0f, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x25, 0x2e, 0x6f, 0x70, - 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x6f, 0x72, 0x1a, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5e, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, + 0x41, 0x64, 0x64, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x67, 0x0a, 0x0f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, + 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x1a, 0x2d, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, + 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, - 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5e, 0x0a, 0x0c, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, - 0x6c, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, + 0x0c, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x22, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, + 0x6c, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x46, 0x65, - 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, - 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, - 0x6e, 0x64, 0x46, 0x65, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5e, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, - 0x65, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, + 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, + 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, 0x22, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, - 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xc9, 0x01, 0xc8, 0xe1, 0x1e, 0x00, 0x0a, - 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x3d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, - 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, 0x31, - 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, - 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, 0x69, - 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, - 0x1d, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, - 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, - 0x13, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, + 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xc9, 0x01, 0xc8, 0xe1, 0x1e, 0x00, 0x0a, 0x15, 0x63, 0x6f, 0x6d, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, + 0x76, 0x31, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3d, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, 0x69, + 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, + 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4f, + 0x4f, 0x58, 0xaa, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x63, 0x68, + 0x69, 0x6c, 0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, + 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1d, 0x4f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0x5c, 0x47, + 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x4f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x3a, 0x3a, 0x56, 0x31, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/api/opinit/opchild/v1/types.pulsar.go b/api/opinit/opchild/v1/types.pulsar.go index 06ce153e..98d0a9df 100644 --- a/api/opinit/opchild/v1/types.pulsar.go +++ b/api/opinit/opchild/v1/types.pulsar.go @@ -14,7 +14,6 @@ import ( protoiface "google.golang.org/protobuf/runtime/protoiface" protoimpl "google.golang.org/protobuf/runtime/protoimpl" anypb "google.golang.org/protobuf/types/known/anypb" - timestamppb "google.golang.org/protobuf/types/known/timestamppb" io "io" reflect "reflect" sync "sync" @@ -2702,1081 +2701,78 @@ func (x *fastReflection_BridgeInfo) ProtoMethods() *protoiface.Methods { } } -var _ protoreflect.List = (*_PendingDeposits_2_list)(nil) +var _ protoreflect.List = (*_CoinsWrapper_1_list)(nil) -type _PendingDeposits_2_list struct { +type _CoinsWrapper_1_list struct { list *[]*v1beta1.Coin } -func (x *_PendingDeposits_2_list) Len() int { +func (x *_CoinsWrapper_1_list) Len() int { if x.list == nil { return 0 } return len(*x.list) } -func (x *_PendingDeposits_2_list) Get(i int) protoreflect.Value { +func (x *_CoinsWrapper_1_list) Get(i int) protoreflect.Value { return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) } -func (x *_PendingDeposits_2_list) Set(i int, value protoreflect.Value) { +func (x *_CoinsWrapper_1_list) Set(i int, value protoreflect.Value) { valueUnwrapped := value.Message() concreteValue := valueUnwrapped.Interface().(*v1beta1.Coin) (*x.list)[i] = concreteValue } -func (x *_PendingDeposits_2_list) Append(value protoreflect.Value) { +func (x *_CoinsWrapper_1_list) Append(value protoreflect.Value) { valueUnwrapped := value.Message() concreteValue := valueUnwrapped.Interface().(*v1beta1.Coin) - *x.list = append(*x.list, concreteValue) -} - -func (x *_PendingDeposits_2_list) AppendMutable() protoreflect.Value { - v := new(v1beta1.Coin) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_PendingDeposits_2_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_PendingDeposits_2_list) NewElement() protoreflect.Value { - v := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_PendingDeposits_2_list) IsValid() bool { - return x.list != nil -} - -var ( - md_PendingDeposits protoreflect.MessageDescriptor - fd_PendingDeposits_recipient protoreflect.FieldDescriptor - fd_PendingDeposits_coins protoreflect.FieldDescriptor -) - -func init() { - file_opinit_opchild_v1_types_proto_init() - md_PendingDeposits = File_opinit_opchild_v1_types_proto.Messages().ByName("PendingDeposits") - fd_PendingDeposits_recipient = md_PendingDeposits.Fields().ByName("recipient") - fd_PendingDeposits_coins = md_PendingDeposits.Fields().ByName("coins") -} - -var _ protoreflect.Message = (*fastReflection_PendingDeposits)(nil) - -type fastReflection_PendingDeposits PendingDeposits - -func (x *PendingDeposits) ProtoReflect() protoreflect.Message { - return (*fastReflection_PendingDeposits)(x) -} - -func (x *PendingDeposits) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_opchild_v1_types_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -var _fastReflection_PendingDeposits_messageType fastReflection_PendingDeposits_messageType -var _ protoreflect.MessageType = fastReflection_PendingDeposits_messageType{} - -type fastReflection_PendingDeposits_messageType struct{} - -func (x fastReflection_PendingDeposits_messageType) Zero() protoreflect.Message { - return (*fastReflection_PendingDeposits)(nil) -} -func (x fastReflection_PendingDeposits_messageType) New() protoreflect.Message { - return new(fastReflection_PendingDeposits) -} -func (x fastReflection_PendingDeposits_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_PendingDeposits -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_PendingDeposits) Descriptor() protoreflect.MessageDescriptor { - return md_PendingDeposits -} - -// Type returns the message type, which encapsulates both Go and protobuf -// type information. If the Go type information is not needed, -// it is recommended that the message descriptor be used instead. -func (x *fastReflection_PendingDeposits) Type() protoreflect.MessageType { - return _fastReflection_PendingDeposits_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_PendingDeposits) New() protoreflect.Message { - return new(fastReflection_PendingDeposits) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_PendingDeposits) Interface() protoreflect.ProtoMessage { - return (*PendingDeposits)(x) -} - -// Range iterates over every populated field in an undefined order, -// calling f for each field descriptor and value encountered. -// Range returns immediately if f returns false. -// While iterating, mutating operations may only be performed -// on the current field descriptor. -func (x *fastReflection_PendingDeposits) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Recipient != "" { - value := protoreflect.ValueOfString(x.Recipient) - if !f(fd_PendingDeposits_recipient, value) { - return - } - } - if len(x.Coins) != 0 { - value := protoreflect.ValueOfList(&_PendingDeposits_2_list{list: &x.Coins}) - if !f(fd_PendingDeposits_coins, value) { - return - } - } -} - -// Has reports whether a field is populated. -// -// Some fields have the property of nullability where it is possible to -// distinguish between the default value of a field and whether the field -// was explicitly populated with the default value. Singular message fields, -// member fields of a oneof, and proto2 scalar fields are nullable. Such -// fields are populated only if explicitly set. -// -// In other cases (aside from the nullable cases above), -// a proto3 scalar field is populated if it contains a non-zero value, and -// a repeated field is populated if it is non-empty. -func (x *fastReflection_PendingDeposits) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "opinit.opchild.v1.PendingDeposits.recipient": - return x.Recipient != "" - case "opinit.opchild.v1.PendingDeposits.coins": - return len(x.Coins) != 0 - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.PendingDeposits")) - } - panic(fmt.Errorf("message opinit.opchild.v1.PendingDeposits does not contain field %s", fd.FullName())) - } -} - -// Clear clears the field such that a subsequent Has call reports false. -// -// Clearing an extension field clears both the extension type and value -// associated with the given field number. -// -// Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_PendingDeposits) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "opinit.opchild.v1.PendingDeposits.recipient": - x.Recipient = "" - case "opinit.opchild.v1.PendingDeposits.coins": - x.Coins = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.PendingDeposits")) - } - panic(fmt.Errorf("message opinit.opchild.v1.PendingDeposits does not contain field %s", fd.FullName())) - } -} - -// Get retrieves the value for a field. -// -// For unpopulated scalars, it returns the default value, where -// the default value of a bytes scalar is guaranteed to be a copy. -// For unpopulated composite types, it returns an empty, read-only view -// of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_PendingDeposits) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "opinit.opchild.v1.PendingDeposits.recipient": - value := x.Recipient - return protoreflect.ValueOfString(value) - case "opinit.opchild.v1.PendingDeposits.coins": - if len(x.Coins) == 0 { - return protoreflect.ValueOfList(&_PendingDeposits_2_list{}) - } - listValue := &_PendingDeposits_2_list{list: &x.Coins} - return protoreflect.ValueOfList(listValue) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.PendingDeposits")) - } - panic(fmt.Errorf("message opinit.opchild.v1.PendingDeposits does not contain field %s", descriptor.FullName())) - } -} - -// Set stores the value for a field. -// -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType. -// When setting a composite type, it is unspecified whether the stored value -// aliases the source's memory in any way. If the composite value is an -// empty, read-only value, then it panics. -// -// Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_PendingDeposits) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "opinit.opchild.v1.PendingDeposits.recipient": - x.Recipient = value.Interface().(string) - case "opinit.opchild.v1.PendingDeposits.coins": - lv := value.List() - clv := lv.(*_PendingDeposits_2_list) - x.Coins = *clv.list - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.PendingDeposits")) - } - panic(fmt.Errorf("message opinit.opchild.v1.PendingDeposits does not contain field %s", fd.FullName())) - } -} - -// Mutable returns a mutable reference to a composite type. -// -// If the field is unpopulated, it may allocate a composite value. -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType -// if not already stored. -// It panics if the field does not contain a composite type. -// -// Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_PendingDeposits) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.PendingDeposits.coins": - if x.Coins == nil { - x.Coins = []*v1beta1.Coin{} - } - value := &_PendingDeposits_2_list{list: &x.Coins} - return protoreflect.ValueOfList(value) - case "opinit.opchild.v1.PendingDeposits.recipient": - panic(fmt.Errorf("field recipient of message opinit.opchild.v1.PendingDeposits is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.PendingDeposits")) - } - panic(fmt.Errorf("message opinit.opchild.v1.PendingDeposits does not contain field %s", fd.FullName())) - } -} - -// NewField returns a new value that is assignable to the field -// for the given descriptor. For scalars, this returns the default value. -// For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_PendingDeposits) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.PendingDeposits.recipient": - return protoreflect.ValueOfString("") - case "opinit.opchild.v1.PendingDeposits.coins": - list := []*v1beta1.Coin{} - return protoreflect.ValueOfList(&_PendingDeposits_2_list{list: &list}) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.PendingDeposits")) - } - panic(fmt.Errorf("message opinit.opchild.v1.PendingDeposits does not contain field %s", fd.FullName())) - } -} - -// WhichOneof reports which field within the oneof is populated, -// returning nil if none are populated. -// It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_PendingDeposits) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in opinit.opchild.v1.PendingDeposits", d.FullName())) - } - panic("unreachable") -} - -// GetUnknown retrieves the entire list of unknown fields. -// The caller may only mutate the contents of the RawFields -// if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_PendingDeposits) GetUnknown() protoreflect.RawFields { - return x.unknownFields -} - -// SetUnknown stores an entire list of unknown fields. -// The raw fields must be syntactically valid according to the wire format. -// An implementation may panic if this is not the case. -// Once stored, the caller must not mutate the content of the RawFields. -// An empty RawFields may be passed to clear the fields. -// -// SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_PendingDeposits) SetUnknown(fields protoreflect.RawFields) { - x.unknownFields = fields -} - -// IsValid reports whether the message is valid. -// -// An invalid message is an empty, read-only value. -// -// An invalid message often corresponds to a nil pointer of the concrete -// message type, but the details are implementation dependent. -// Validity is not part of the protobuf data model, and may not -// be preserved in marshaling or other operations. -func (x *fastReflection_PendingDeposits) IsValid() bool { - return x != nil -} - -// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. -// This method may return nil. -// -// The returned methods type is identical to -// "google.golang.org/protobuf/runtime/protoiface".Methods. -// Consult the protoiface package documentation for details. -func (x *fastReflection_PendingDeposits) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*PendingDeposits) - if x == nil { - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: 0, - } - } - options := runtime.SizeInputToOptions(input) - _ = options - var n int - var l int - _ = l - l = len(x.Recipient) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if len(x.Coins) > 0 { - for _, e := range x.Coins { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*PendingDeposits) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.Coins) > 0 { - for iNdEx := len(x.Coins) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.Coins[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x12 - } - } - if len(x.Recipient) > 0 { - i -= len(x.Recipient) - copy(dAtA[i:], x.Recipient) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Recipient))) - i-- - dAtA[i] = 0xa - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*PendingDeposits) - if x == nil { - return protoiface.UnmarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Flags: input.Flags, - }, nil - } - options := runtime.UnmarshalInputToOptions(input) - _ = options - dAtA := input.Buf - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - 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++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: PendingDeposits: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: PendingDeposits: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Recipient", wireType) - } - var stringLen uint64 - 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++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Recipient = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Coins", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Coins = append(x.Coins, &v1beta1.Coin{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Coins[len(x.Coins)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var _ protoreflect.List = (*_CoinsWrapper_1_list)(nil) - -type _CoinsWrapper_1_list struct { - list *[]*v1beta1.Coin -} - -func (x *_CoinsWrapper_1_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_CoinsWrapper_1_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) -} - -func (x *_CoinsWrapper_1_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*v1beta1.Coin) - (*x.list)[i] = concreteValue -} - -func (x *_CoinsWrapper_1_list) Append(value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*v1beta1.Coin) - *x.list = append(*x.list, concreteValue) -} - -func (x *_CoinsWrapper_1_list) AppendMutable() protoreflect.Value { - v := new(v1beta1.Coin) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_CoinsWrapper_1_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_CoinsWrapper_1_list) NewElement() protoreflect.Value { - v := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_CoinsWrapper_1_list) IsValid() bool { - return x.list != nil -} - -var ( - md_CoinsWrapper protoreflect.MessageDescriptor - fd_CoinsWrapper_coins protoreflect.FieldDescriptor -) - -func init() { - file_opinit_opchild_v1_types_proto_init() - md_CoinsWrapper = File_opinit_opchild_v1_types_proto.Messages().ByName("CoinsWrapper") - fd_CoinsWrapper_coins = md_CoinsWrapper.Fields().ByName("coins") -} - -var _ protoreflect.Message = (*fastReflection_CoinsWrapper)(nil) - -type fastReflection_CoinsWrapper CoinsWrapper - -func (x *CoinsWrapper) ProtoReflect() protoreflect.Message { - return (*fastReflection_CoinsWrapper)(x) -} - -func (x *CoinsWrapper) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_opchild_v1_types_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -var _fastReflection_CoinsWrapper_messageType fastReflection_CoinsWrapper_messageType -var _ protoreflect.MessageType = fastReflection_CoinsWrapper_messageType{} - -type fastReflection_CoinsWrapper_messageType struct{} - -func (x fastReflection_CoinsWrapper_messageType) Zero() protoreflect.Message { - return (*fastReflection_CoinsWrapper)(nil) -} -func (x fastReflection_CoinsWrapper_messageType) New() protoreflect.Message { - return new(fastReflection_CoinsWrapper) -} -func (x fastReflection_CoinsWrapper_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_CoinsWrapper -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_CoinsWrapper) Descriptor() protoreflect.MessageDescriptor { - return md_CoinsWrapper -} - -// Type returns the message type, which encapsulates both Go and protobuf -// type information. If the Go type information is not needed, -// it is recommended that the message descriptor be used instead. -func (x *fastReflection_CoinsWrapper) Type() protoreflect.MessageType { - return _fastReflection_CoinsWrapper_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_CoinsWrapper) New() protoreflect.Message { - return new(fastReflection_CoinsWrapper) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_CoinsWrapper) Interface() protoreflect.ProtoMessage { - return (*CoinsWrapper)(x) -} - -// Range iterates over every populated field in an undefined order, -// calling f for each field descriptor and value encountered. -// Range returns immediately if f returns false. -// While iterating, mutating operations may only be performed -// on the current field descriptor. -func (x *fastReflection_CoinsWrapper) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if len(x.Coins) != 0 { - value := protoreflect.ValueOfList(&_CoinsWrapper_1_list{list: &x.Coins}) - if !f(fd_CoinsWrapper_coins, value) { - return - } - } -} - -// Has reports whether a field is populated. -// -// Some fields have the property of nullability where it is possible to -// distinguish between the default value of a field and whether the field -// was explicitly populated with the default value. Singular message fields, -// member fields of a oneof, and proto2 scalar fields are nullable. Such -// fields are populated only if explicitly set. -// -// In other cases (aside from the nullable cases above), -// a proto3 scalar field is populated if it contains a non-zero value, and -// a repeated field is populated if it is non-empty. -func (x *fastReflection_CoinsWrapper) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "opinit.opchild.v1.CoinsWrapper.coins": - return len(x.Coins) != 0 - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) - } - panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) - } -} - -// Clear clears the field such that a subsequent Has call reports false. -// -// Clearing an extension field clears both the extension type and value -// associated with the given field number. -// -// Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_CoinsWrapper) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "opinit.opchild.v1.CoinsWrapper.coins": - x.Coins = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) - } - panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) - } -} - -// Get retrieves the value for a field. -// -// For unpopulated scalars, it returns the default value, where -// the default value of a bytes scalar is guaranteed to be a copy. -// For unpopulated composite types, it returns an empty, read-only view -// of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_CoinsWrapper) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "opinit.opchild.v1.CoinsWrapper.coins": - if len(x.Coins) == 0 { - return protoreflect.ValueOfList(&_CoinsWrapper_1_list{}) - } - listValue := &_CoinsWrapper_1_list{list: &x.Coins} - return protoreflect.ValueOfList(listValue) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) - } - panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", descriptor.FullName())) - } -} - -// Set stores the value for a field. -// -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType. -// When setting a composite type, it is unspecified whether the stored value -// aliases the source's memory in any way. If the composite value is an -// empty, read-only value, then it panics. -// -// Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_CoinsWrapper) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "opinit.opchild.v1.CoinsWrapper.coins": - lv := value.List() - clv := lv.(*_CoinsWrapper_1_list) - x.Coins = *clv.list - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) - } - panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) - } -} - -// Mutable returns a mutable reference to a composite type. -// -// If the field is unpopulated, it may allocate a composite value. -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType -// if not already stored. -// It panics if the field does not contain a composite type. -// -// Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_CoinsWrapper) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.CoinsWrapper.coins": - if x.Coins == nil { - x.Coins = []*v1beta1.Coin{} - } - value := &_CoinsWrapper_1_list{list: &x.Coins} - return protoreflect.ValueOfList(value) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) - } - panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) - } -} - -// NewField returns a new value that is assignable to the field -// for the given descriptor. For scalars, this returns the default value. -// For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_CoinsWrapper) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.opchild.v1.CoinsWrapper.coins": - list := []*v1beta1.Coin{} - return protoreflect.ValueOfList(&_CoinsWrapper_1_list{list: &list}) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) - } - panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) - } -} - -// WhichOneof reports which field within the oneof is populated, -// returning nil if none are populated. -// It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_CoinsWrapper) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in opinit.opchild.v1.CoinsWrapper", d.FullName())) - } - panic("unreachable") -} - -// GetUnknown retrieves the entire list of unknown fields. -// The caller may only mutate the contents of the RawFields -// if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_CoinsWrapper) GetUnknown() protoreflect.RawFields { - return x.unknownFields -} - -// SetUnknown stores an entire list of unknown fields. -// The raw fields must be syntactically valid according to the wire format. -// An implementation may panic if this is not the case. -// Once stored, the caller must not mutate the content of the RawFields. -// An empty RawFields may be passed to clear the fields. -// -// SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_CoinsWrapper) SetUnknown(fields protoreflect.RawFields) { - x.unknownFields = fields -} - -// IsValid reports whether the message is valid. -// -// An invalid message is an empty, read-only value. -// -// An invalid message often corresponds to a nil pointer of the concrete -// message type, but the details are implementation dependent. -// Validity is not part of the protobuf data model, and may not -// be preserved in marshaling or other operations. -func (x *fastReflection_CoinsWrapper) IsValid() bool { - return x != nil -} - -// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. -// This method may return nil. -// -// The returned methods type is identical to -// "google.golang.org/protobuf/runtime/protoiface".Methods. -// Consult the protoiface package documentation for details. -func (x *fastReflection_CoinsWrapper) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*CoinsWrapper) - if x == nil { - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: 0, - } - } - options := runtime.SizeInputToOptions(input) - _ = options - var n int - var l int - _ = l - if len(x.Coins) > 0 { - for _, e := range x.Coins { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*CoinsWrapper) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.Coins) > 0 { - for iNdEx := len(x.Coins) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.Coins[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0xa - } - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*CoinsWrapper) - if x == nil { - return protoiface.UnmarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Flags: input.Flags, - }, nil - } - options := runtime.UnmarshalInputToOptions(input) - _ = options - dAtA := input.Buf - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - 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++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: CoinsWrapper: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: CoinsWrapper: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Coins", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Coins = append(x.Coins, &v1beta1.Coin{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Coins[len(x.Coins)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, + *x.list = append(*x.list, concreteValue) +} + +func (x *_CoinsWrapper_1_list) AppendMutable() protoreflect.Value { + v := new(v1beta1.Coin) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_CoinsWrapper_1_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil } + *x.list = (*x.list)[:n] +} + +func (x *_CoinsWrapper_1_list) NewElement() protoreflect.Value { + v := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_CoinsWrapper_1_list) IsValid() bool { + return x.list != nil } var ( - md_WithdrawalCommitment protoreflect.MessageDescriptor - fd_WithdrawalCommitment_commitment protoreflect.FieldDescriptor - fd_WithdrawalCommitment_submit_time protoreflect.FieldDescriptor + md_CoinsWrapper protoreflect.MessageDescriptor + fd_CoinsWrapper_coins protoreflect.FieldDescriptor ) func init() { file_opinit_opchild_v1_types_proto_init() - md_WithdrawalCommitment = File_opinit_opchild_v1_types_proto.Messages().ByName("WithdrawalCommitment") - fd_WithdrawalCommitment_commitment = md_WithdrawalCommitment.Fields().ByName("commitment") - fd_WithdrawalCommitment_submit_time = md_WithdrawalCommitment.Fields().ByName("submit_time") + md_CoinsWrapper = File_opinit_opchild_v1_types_proto.Messages().ByName("CoinsWrapper") + fd_CoinsWrapper_coins = md_CoinsWrapper.Fields().ByName("coins") } -var _ protoreflect.Message = (*fastReflection_WithdrawalCommitment)(nil) +var _ protoreflect.Message = (*fastReflection_CoinsWrapper)(nil) -type fastReflection_WithdrawalCommitment WithdrawalCommitment +type fastReflection_CoinsWrapper CoinsWrapper -func (x *WithdrawalCommitment) ProtoReflect() protoreflect.Message { - return (*fastReflection_WithdrawalCommitment)(x) +func (x *CoinsWrapper) ProtoReflect() protoreflect.Message { + return (*fastReflection_CoinsWrapper)(x) } -func (x *WithdrawalCommitment) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_opchild_v1_types_proto_msgTypes[6] +func (x *CoinsWrapper) slowProtoReflect() protoreflect.Message { + mi := &file_opinit_opchild_v1_types_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3787,43 +2783,43 @@ func (x *WithdrawalCommitment) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_WithdrawalCommitment_messageType fastReflection_WithdrawalCommitment_messageType -var _ protoreflect.MessageType = fastReflection_WithdrawalCommitment_messageType{} +var _fastReflection_CoinsWrapper_messageType fastReflection_CoinsWrapper_messageType +var _ protoreflect.MessageType = fastReflection_CoinsWrapper_messageType{} -type fastReflection_WithdrawalCommitment_messageType struct{} +type fastReflection_CoinsWrapper_messageType struct{} -func (x fastReflection_WithdrawalCommitment_messageType) Zero() protoreflect.Message { - return (*fastReflection_WithdrawalCommitment)(nil) +func (x fastReflection_CoinsWrapper_messageType) Zero() protoreflect.Message { + return (*fastReflection_CoinsWrapper)(nil) } -func (x fastReflection_WithdrawalCommitment_messageType) New() protoreflect.Message { - return new(fastReflection_WithdrawalCommitment) +func (x fastReflection_CoinsWrapper_messageType) New() protoreflect.Message { + return new(fastReflection_CoinsWrapper) } -func (x fastReflection_WithdrawalCommitment_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_WithdrawalCommitment +func (x fastReflection_CoinsWrapper_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_CoinsWrapper } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_WithdrawalCommitment) Descriptor() protoreflect.MessageDescriptor { - return md_WithdrawalCommitment +func (x *fastReflection_CoinsWrapper) Descriptor() protoreflect.MessageDescriptor { + return md_CoinsWrapper } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_WithdrawalCommitment) Type() protoreflect.MessageType { - return _fastReflection_WithdrawalCommitment_messageType +func (x *fastReflection_CoinsWrapper) Type() protoreflect.MessageType { + return _fastReflection_CoinsWrapper_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_WithdrawalCommitment) New() protoreflect.Message { - return new(fastReflection_WithdrawalCommitment) +func (x *fastReflection_CoinsWrapper) New() protoreflect.Message { + return new(fastReflection_CoinsWrapper) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_WithdrawalCommitment) Interface() protoreflect.ProtoMessage { - return (*WithdrawalCommitment)(x) +func (x *fastReflection_CoinsWrapper) Interface() protoreflect.ProtoMessage { + return (*CoinsWrapper)(x) } // Range iterates over every populated field in an undefined order, @@ -3831,16 +2827,10 @@ func (x *fastReflection_WithdrawalCommitment) Interface() protoreflect.ProtoMess // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_WithdrawalCommitment) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if len(x.Commitment) != 0 { - value := protoreflect.ValueOfBytes(x.Commitment) - if !f(fd_WithdrawalCommitment_commitment, value) { - return - } - } - if x.SubmitTime != nil { - value := protoreflect.ValueOfMessage(x.SubmitTime.ProtoReflect()) - if !f(fd_WithdrawalCommitment_submit_time, value) { +func (x *fastReflection_CoinsWrapper) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if len(x.Coins) != 0 { + value := protoreflect.ValueOfList(&_CoinsWrapper_1_list{list: &x.Coins}) + if !f(fd_CoinsWrapper_coins, value) { return } } @@ -3857,17 +2847,15 @@ func (x *fastReflection_WithdrawalCommitment) Range(f func(protoreflect.FieldDes // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_WithdrawalCommitment) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_CoinsWrapper) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "opinit.opchild.v1.WithdrawalCommitment.commitment": - return len(x.Commitment) != 0 - case "opinit.opchild.v1.WithdrawalCommitment.submit_time": - return x.SubmitTime != nil + case "opinit.opchild.v1.CoinsWrapper.coins": + return len(x.Coins) != 0 default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.WithdrawalCommitment")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) } - panic(fmt.Errorf("message opinit.opchild.v1.WithdrawalCommitment does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) } } @@ -3877,17 +2865,15 @@ func (x *fastReflection_WithdrawalCommitment) Has(fd protoreflect.FieldDescripto // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_WithdrawalCommitment) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_CoinsWrapper) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "opinit.opchild.v1.WithdrawalCommitment.commitment": - x.Commitment = nil - case "opinit.opchild.v1.WithdrawalCommitment.submit_time": - x.SubmitTime = nil + case "opinit.opchild.v1.CoinsWrapper.coins": + x.Coins = nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.WithdrawalCommitment")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) } - panic(fmt.Errorf("message opinit.opchild.v1.WithdrawalCommitment does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) } } @@ -3897,19 +2883,19 @@ func (x *fastReflection_WithdrawalCommitment) Clear(fd protoreflect.FieldDescrip // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_WithdrawalCommitment) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_CoinsWrapper) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "opinit.opchild.v1.WithdrawalCommitment.commitment": - value := x.Commitment - return protoreflect.ValueOfBytes(value) - case "opinit.opchild.v1.WithdrawalCommitment.submit_time": - value := x.SubmitTime - return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "opinit.opchild.v1.CoinsWrapper.coins": + if len(x.Coins) == 0 { + return protoreflect.ValueOfList(&_CoinsWrapper_1_list{}) + } + listValue := &_CoinsWrapper_1_list{list: &x.Coins} + return protoreflect.ValueOfList(listValue) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.WithdrawalCommitment")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) } - panic(fmt.Errorf("message opinit.opchild.v1.WithdrawalCommitment does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", descriptor.FullName())) } } @@ -3923,17 +2909,17 @@ func (x *fastReflection_WithdrawalCommitment) Get(descriptor protoreflect.FieldD // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_WithdrawalCommitment) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_CoinsWrapper) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "opinit.opchild.v1.WithdrawalCommitment.commitment": - x.Commitment = value.Bytes() - case "opinit.opchild.v1.WithdrawalCommitment.submit_time": - x.SubmitTime = value.Message().Interface().(*timestamppb.Timestamp) + case "opinit.opchild.v1.CoinsWrapper.coins": + lv := value.List() + clv := lv.(*_CoinsWrapper_1_list) + x.Coins = *clv.list default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.WithdrawalCommitment")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) } - panic(fmt.Errorf("message opinit.opchild.v1.WithdrawalCommitment does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) } } @@ -3947,48 +2933,45 @@ func (x *fastReflection_WithdrawalCommitment) Set(fd protoreflect.FieldDescripto // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_WithdrawalCommitment) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_CoinsWrapper) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "opinit.opchild.v1.WithdrawalCommitment.submit_time": - if x.SubmitTime == nil { - x.SubmitTime = new(timestamppb.Timestamp) + case "opinit.opchild.v1.CoinsWrapper.coins": + if x.Coins == nil { + x.Coins = []*v1beta1.Coin{} } - return protoreflect.ValueOfMessage(x.SubmitTime.ProtoReflect()) - case "opinit.opchild.v1.WithdrawalCommitment.commitment": - panic(fmt.Errorf("field commitment of message opinit.opchild.v1.WithdrawalCommitment is not mutable")) + value := &_CoinsWrapper_1_list{list: &x.Coins} + return protoreflect.ValueOfList(value) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.WithdrawalCommitment")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) } - panic(fmt.Errorf("message opinit.opchild.v1.WithdrawalCommitment does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_WithdrawalCommitment) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_CoinsWrapper) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "opinit.opchild.v1.WithdrawalCommitment.commitment": - return protoreflect.ValueOfBytes(nil) - case "opinit.opchild.v1.WithdrawalCommitment.submit_time": - m := new(timestamppb.Timestamp) - return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "opinit.opchild.v1.CoinsWrapper.coins": + list := []*v1beta1.Coin{} + return protoreflect.ValueOfList(&_CoinsWrapper_1_list{list: &list}) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.WithdrawalCommitment")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.opchild.v1.CoinsWrapper")) } - panic(fmt.Errorf("message opinit.opchild.v1.WithdrawalCommitment does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message opinit.opchild.v1.CoinsWrapper does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_WithdrawalCommitment) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_CoinsWrapper) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in opinit.opchild.v1.WithdrawalCommitment", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in opinit.opchild.v1.CoinsWrapper", d.FullName())) } panic("unreachable") } @@ -3996,7 +2979,7 @@ func (x *fastReflection_WithdrawalCommitment) WhichOneof(d protoreflect.OneofDes // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_WithdrawalCommitment) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_CoinsWrapper) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -4007,7 +2990,7 @@ func (x *fastReflection_WithdrawalCommitment) GetUnknown() protoreflect.RawField // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_WithdrawalCommitment) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_CoinsWrapper) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -4019,7 +3002,7 @@ func (x *fastReflection_WithdrawalCommitment) SetUnknown(fields protoreflect.Raw // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_WithdrawalCommitment) IsValid() bool { +func (x *fastReflection_CoinsWrapper) IsValid() bool { return x != nil } @@ -4029,9 +3012,9 @@ func (x *fastReflection_WithdrawalCommitment) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_WithdrawalCommitment) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_CoinsWrapper) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*WithdrawalCommitment) + x := input.Message.Interface().(*CoinsWrapper) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4043,13 +3026,11 @@ func (x *fastReflection_WithdrawalCommitment) ProtoMethods() *protoiface.Methods var n int var l int _ = l - l = len(x.Commitment) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.SubmitTime != nil { - l = options.Size(x.SubmitTime) - n += 1 + l + runtime.Sov(uint64(l)) + if len(x.Coins) > 0 { + for _, e := range x.Coins { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } } if x.unknownFields != nil { n += len(x.unknownFields) @@ -4061,7 +3042,7 @@ func (x *fastReflection_WithdrawalCommitment) ProtoMethods() *protoiface.Methods } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*WithdrawalCommitment) + x := input.Message.Interface().(*CoinsWrapper) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4080,26 +3061,21 @@ func (x *fastReflection_WithdrawalCommitment) ProtoMethods() *protoiface.Methods i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.SubmitTime != nil { - encoded, err := options.Marshal(x.SubmitTime) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err + if len(x.Coins) > 0 { + for iNdEx := len(x.Coins) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Coins[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x2a - } - if len(x.Commitment) > 0 { - i -= len(x.Commitment) - copy(dAtA[i:], x.Commitment) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Commitment))) - i-- - dAtA[i] = 0xa } if input.Buf != nil { input.Buf = append(input.Buf, dAtA...) @@ -4112,7 +3088,7 @@ func (x *fastReflection_WithdrawalCommitment) ProtoMethods() *protoiface.Methods }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*WithdrawalCommitment) + x := input.Message.Interface().(*CoinsWrapper) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -4144,49 +3120,15 @@ func (x *fastReflection_WithdrawalCommitment) ProtoMethods() *protoiface.Methods fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: WithdrawalCommitment: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: CoinsWrapper: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: WithdrawalCommitment: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: CoinsWrapper: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Commitment", wireType) - } - var byteLen 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++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Commitment = append(x.Commitment[:0], dAtA[iNdEx:postIndex]...) - if x.Commitment == nil { - x.Commitment = []byte{} - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field SubmitTime", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Coins", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -4213,10 +3155,8 @@ func (x *fastReflection_WithdrawalCommitment) ProtoMethods() *protoiface.Methods if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - if x.SubmitTime == nil { - x.SubmitTime = ×tamppb.Timestamp{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.SubmitTime); err != nil { + x.Coins = append(x.Coins, &v1beta1.Coin{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Coins[len(x.Coins)-1]); err != nil { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err } iNdEx = postIndex @@ -4586,52 +3526,6 @@ func (x *BridgeInfo) GetBridgeConfig() *v1.BridgeConfig { return nil } -// PendingDeposits defines the set of pending deposits. -type PendingDeposits struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // recipient is the address of the recipient. - Recipient string `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"` - // coins is a list of coins to be deposited. - Coins []*v1beta1.Coin `protobuf:"bytes,2,rep,name=coins,proto3" json:"coins,omitempty"` -} - -func (x *PendingDeposits) Reset() { - *x = PendingDeposits{} - if protoimpl.UnsafeEnabled { - mi := &file_opinit_opchild_v1_types_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PendingDeposits) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PendingDeposits) ProtoMessage() {} - -// Deprecated: Use PendingDeposits.ProtoReflect.Descriptor instead. -func (*PendingDeposits) Descriptor() ([]byte, []int) { - return file_opinit_opchild_v1_types_proto_rawDescGZIP(), []int{4} -} - -func (x *PendingDeposits) GetRecipient() string { - if x != nil { - return x.Recipient - } - return "" -} - -func (x *PendingDeposits) GetCoins() []*v1beta1.Coin { - if x != nil { - return x.Coins - } - return nil -} - // CoinsWrapper defines the set of coins. type CoinsWrapper struct { state protoimpl.MessageState @@ -4644,7 +3538,7 @@ type CoinsWrapper struct { func (x *CoinsWrapper) Reset() { *x = CoinsWrapper{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_opchild_v1_types_proto_msgTypes[5] + mi := &file_opinit_opchild_v1_types_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4658,7 +3552,7 @@ func (*CoinsWrapper) ProtoMessage() {} // Deprecated: Use CoinsWrapper.ProtoReflect.Descriptor instead. func (*CoinsWrapper) Descriptor() ([]byte, []int) { - return file_opinit_opchild_v1_types_proto_rawDescGZIP(), []int{5} + return file_opinit_opchild_v1_types_proto_rawDescGZIP(), []int{4} } func (x *CoinsWrapper) GetCoins() []*v1beta1.Coin { @@ -4668,49 +3562,6 @@ func (x *CoinsWrapper) GetCoins() []*v1beta1.Coin { return nil } -type WithdrawalCommitment struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Commitment []byte `protobuf:"bytes,1,opt,name=commitment,proto3" json:"commitment,omitempty"` - SubmitTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=submit_time,json=submitTime,proto3" json:"submit_time,omitempty"` -} - -func (x *WithdrawalCommitment) Reset() { - *x = WithdrawalCommitment{} - if protoimpl.UnsafeEnabled { - mi := &file_opinit_opchild_v1_types_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *WithdrawalCommitment) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*WithdrawalCommitment) ProtoMessage() {} - -// Deprecated: Use WithdrawalCommitment.ProtoReflect.Descriptor instead. -func (*WithdrawalCommitment) Descriptor() ([]byte, []int) { - return file_opinit_opchild_v1_types_proto_rawDescGZIP(), []int{6} -} - -func (x *WithdrawalCommitment) GetCommitment() []byte { - if x != nil { - return x.Commitment - } - return nil -} - -func (x *WithdrawalCommitment) GetSubmitTime() *timestamppb.Timestamp { - if x != nil { - return x.SubmitTime - } - return nil -} - var File_opinit_opchild_v1_types_proto protoreflect.FileDescriptor var file_opinit_opchild_v1_types_proto_rawDesc = []byte{ @@ -4725,142 +3576,121 @@ var file_opinit_opchild_v1_types_proto_rawDesc = []byte{ 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x1a, 0x1c, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x68, 0x6f, 0x73, - 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x1a, 0x1b, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2f, 0x61, 0x62, 0x63, - 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xcd, 0x04, - 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x42, 0x19, 0xf2, 0xde, 0x1f, 0x15, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, 0x61, 0x78, 0x5f, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x22, 0x52, 0x0d, 0x6d, 0x61, 0x78, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x4c, 0x0a, 0x12, 0x68, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x1d, 0xf2, 0xde, 0x1f, 0x19, 0x79, 0x61, 0x6d, 0x6c, - 0x3a, 0x22, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x74, - 0x72, 0x69, 0x65, 0x73, 0x22, 0x52, 0x11, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, - 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x8f, 0x01, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, - 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x63, 0x43, 0x6f, 0x69, 0x6e, 0x42, - 0x4b, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x14, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, - 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0xaa, 0xdf, 0x1f, - 0x2b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, - 0x70, 0x65, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x52, 0x0c, 0x6d, 0x69, - 0x6e, 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x12, 0x63, 0x0a, 0x10, 0x62, 0x72, - 0x69, 0x64, 0x67, 0x65, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x09, 0x42, 0x38, 0xf2, 0xde, 0x1f, 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x6f, 0x72, 0x73, - 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0f, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x12, - 0x43, 0x0a, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, - 0xf2, 0xde, 0x1f, 0x0c, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x22, + 0x6f, 0x1a, 0x1c, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, + 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x1b, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2f, 0x61, 0x62, 0x63, 0x69, + 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xcd, 0x04, 0x0a, + 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, + 0x19, 0xf2, 0xde, 0x1f, 0x15, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, 0x61, 0x78, 0x5f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x22, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x4c, 0x0a, 0x12, 0x68, 0x69, 0x73, + 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x1d, 0xf2, 0xde, 0x1f, 0x19, 0x79, 0x61, 0x6d, 0x6c, 0x3a, + 0x22, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x74, 0x72, + 0x69, 0x65, 0x73, 0x22, 0x52, 0x11, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, + 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x8f, 0x01, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, + 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x63, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x4b, + 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x14, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, 0x69, + 0x6e, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0xaa, 0xdf, 0x1f, 0x2b, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x52, 0x0c, 0x6d, 0x69, 0x6e, + 0x47, 0x61, 0x73, 0x50, 0x72, 0x69, 0x63, 0x65, 0x73, 0x12, 0x63, 0x0a, 0x10, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x09, 0x42, 0x38, 0xf2, 0xde, 0x1f, 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x05, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x5a, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, - 0x65, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x35, 0xf2, 0xde, 0x1f, - 0x14, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x66, 0x65, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, - 0x6c, 0x69, 0x73, 0x74, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xa8, 0xe7, 0xb0, - 0x2a, 0x01, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, - 0x3a, 0x1b, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, - 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xbb, 0x02, - 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2c, 0x0a, 0x07, 0x6d, - 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x12, 0xf2, 0xde, - 0x1f, 0x0e, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x22, - 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x10, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x1b, 0xf2, 0xde, 0x1f, 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, - 0x52, 0x0f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x74, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5f, 0x70, - 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, - 0x79, 0x42, 0x33, 0xf2, 0xde, 0x1f, 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x63, 0x6f, 0x6e, - 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0xca, 0xb4, - 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, - 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, - 0x73, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x5f, - 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x15, 0xf2, 0xde, 0x1f, - 0x11, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x63, 0x6f, 0x6e, 0x73, 0x5f, 0x70, 0x6f, 0x77, 0x65, - 0x72, 0x22, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x73, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x0c, 0x88, - 0xa0, 0x1f, 0x00, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x5f, 0x0a, 0x10, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, - 0x45, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x20, 0x2e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x62, - 0x63, 0x69, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x07, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x3a, 0x04, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0xf6, 0x01, 0x0a, - 0x0a, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x62, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x62, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, + 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0f, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x43, + 0x0a, 0x05, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xf2, + 0xde, 0x1f, 0x0c, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x41, - 0x64, 0x64, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x6c, 0x31, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x31, 0x43, 0x68, 0x61, 0x69, - 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6c, 0x31, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x31, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4e, 0x0a, 0x0d, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, - 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, - 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x09, 0xc8, 0xde, - 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xb1, 0x01, 0x0a, 0x0f, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x73, 0x12, 0x36, 0x0a, 0x09, 0x72, 0x65, 0x63, - 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, + 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x05, 0x61, 0x64, + 0x6d, 0x69, 0x6e, 0x12, 0x5a, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, + 0x6c, 0x69, 0x73, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x35, 0xf2, 0xde, 0x1f, 0x14, + 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x66, 0x65, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, + 0x69, 0x73, 0x74, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xa8, 0xe7, 0xb0, 0x2a, + 0x01, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x3a, + 0x1b, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x70, + 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xbb, 0x02, 0x0a, + 0x09, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2c, 0x0a, 0x07, 0x6d, 0x6f, + 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x12, 0xf2, 0xde, 0x1f, + 0x0e, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x22, 0x52, + 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x6b, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x1b, 0xf2, 0xde, 0x1f, 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x52, + 0x0f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x74, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5f, 0x70, 0x75, + 0x62, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, + 0x42, 0x33, 0xf2, 0xde, 0x1f, 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x63, 0x6f, 0x6e, 0x73, + 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0xca, 0xb4, 0x2d, + 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x50, + 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, + 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x5f, 0x70, + 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x15, 0xf2, 0xde, 0x1f, 0x11, + 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x63, 0x6f, 0x6e, 0x73, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, + 0x22, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x73, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x0c, 0x88, 0xa0, + 0x1f, 0x00, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x5f, 0x0a, 0x10, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x45, + 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x61, 0x62, 0x63, + 0x69, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x07, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x73, 0x3a, 0x04, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0xf6, 0x01, 0x0a, 0x0a, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, - 0x74, 0x12, 0x66, 0x0a, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x18, 0x02, 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, 0x35, 0xc8, 0xde, 0x1f, - 0x00, 0xaa, 0xdf, 0x1f, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, - 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, 0xb0, - 0x2a, 0x01, 0x52, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x22, 0x76, 0x0a, 0x0c, 0x43, 0x6f, 0x69, - 0x6e, 0x73, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x12, 0x66, 0x0a, 0x05, 0x63, 0x6f, 0x69, - 0x6e, 0x73, 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, 0x61, 0x31, 0x2e, 0x43, - 0x6f, 0x69, 0x6e, 0x42, 0x35, 0xc8, 0xde, 0x1f, 0x00, 0xaa, 0xdf, 0x1f, 0x28, 0x67, 0x69, 0x74, - 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, - 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x05, 0x63, 0x6f, 0x69, 0x6e, - 0x73, 0x22, 0x82, 0x01, 0x0a, 0x14, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, - 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, - 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, - 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x0b, 0x73, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, - 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x2a, 0xa9, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x35, 0x0a, - 0x20, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, - 0x44, 0x10, 0x00, 0x1a, 0x0f, 0x8a, 0x9d, 0x20, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, - 0x46, 0x49, 0x45, 0x44, 0x12, 0x27, 0x0a, 0x19, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, - 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x4f, 0x4f, - 0x50, 0x10, 0x01, 0x1a, 0x08, 0x8a, 0x9d, 0x20, 0x04, 0x4e, 0x4f, 0x4f, 0x50, 0x12, 0x2d, 0x0a, - 0x1c, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x02, 0x1a, - 0x0b, 0x8a, 0x9d, 0x20, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x1a, 0x04, 0x88, 0xa3, - 0x1e, 0x00, 0x42, 0xd0, 0x01, 0xc8, 0xe1, 0x1e, 0x00, 0xa8, 0xe2, 0x1e, 0x01, 0x0a, 0x15, 0x63, - 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, - 0x64, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x50, 0x01, 0x5a, 0x3d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, - 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, - 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, - 0x31, 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x2e, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, - 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, - 0x02, 0x1d, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, - 0x02, 0x13, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, - 0x64, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x41, 0x64, + 0x64, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x6c, 0x31, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x31, 0x43, 0x68, 0x61, 0x69, 0x6e, + 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6c, 0x31, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x31, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4e, 0x0a, 0x0d, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x09, 0xc8, 0xde, 0x1f, + 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x22, 0x76, 0x0a, 0x0c, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x57, 0x72, 0x61, + 0x70, 0x70, 0x65, 0x72, 0x12, 0x66, 0x0a, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 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, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x35, + 0xc8, 0xde, 0x1f, 0x00, 0xaa, 0xdf, 0x1f, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, + 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x2a, 0xa9, 0x01, 0x0a, + 0x12, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x35, 0x0a, 0x20, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, + 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x1a, 0x0f, 0x8a, 0x9d, 0x20, 0x0b, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x12, 0x27, 0x0a, 0x19, 0x52, 0x45, + 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x4e, 0x4f, 0x4f, 0x50, 0x10, 0x01, 0x1a, 0x08, 0x8a, 0x9d, 0x20, 0x04, 0x4e, + 0x4f, 0x4f, 0x50, 0x12, 0x2d, 0x0a, 0x1c, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, + 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, + 0x45, 0x53, 0x53, 0x10, 0x02, 0x1a, 0x0b, 0x8a, 0x9d, 0x20, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, + 0x53, 0x53, 0x1a, 0x04, 0x88, 0xa3, 0x1e, 0x00, 0x42, 0xd0, 0x01, 0xc8, 0xe1, 0x1e, 0x00, 0xa8, + 0xe2, 0x1e, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, + 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x54, 0x79, 0x70, 0x65, + 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, + 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, + 0x63, 0x68, 0x69, 0x6c, 0x64, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x11, + 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x2e, 0x56, + 0x31, 0xca, 0x02, 0x11, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x63, 0x68, 0x69, + 0x6c, 0x64, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1d, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, + 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, + 0x4f, 0x70, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( @@ -4876,36 +3706,31 @@ func file_opinit_opchild_v1_types_proto_rawDescGZIP() []byte { } var file_opinit_opchild_v1_types_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_opinit_opchild_v1_types_proto_msgTypes = make([]protoimpl.MessageInfo, 7) +var file_opinit_opchild_v1_types_proto_msgTypes = make([]protoimpl.MessageInfo, 5) var file_opinit_opchild_v1_types_proto_goTypes = []interface{}{ - (ResponseResultType)(0), // 0: opinit.opchild.v1.ResponseResultType - (*Params)(nil), // 1: opinit.opchild.v1.Params - (*Validator)(nil), // 2: opinit.opchild.v1.Validator - (*ValidatorUpdates)(nil), // 3: opinit.opchild.v1.ValidatorUpdates - (*BridgeInfo)(nil), // 4: opinit.opchild.v1.BridgeInfo - (*PendingDeposits)(nil), // 5: opinit.opchild.v1.PendingDeposits - (*CoinsWrapper)(nil), // 6: opinit.opchild.v1.CoinsWrapper - (*WithdrawalCommitment)(nil), // 7: opinit.opchild.v1.WithdrawalCommitment - (*v1beta1.DecCoin)(nil), // 8: cosmos.base.v1beta1.DecCoin - (*anypb.Any)(nil), // 9: google.protobuf.Any - (*abci.ValidatorUpdate)(nil), // 10: tendermint.abci.ValidatorUpdate - (*v1.BridgeConfig)(nil), // 11: opinit.ophost.v1.BridgeConfig - (*v1beta1.Coin)(nil), // 12: cosmos.base.v1beta1.Coin - (*timestamppb.Timestamp)(nil), // 13: google.protobuf.Timestamp + (ResponseResultType)(0), // 0: opinit.opchild.v1.ResponseResultType + (*Params)(nil), // 1: opinit.opchild.v1.Params + (*Validator)(nil), // 2: opinit.opchild.v1.Validator + (*ValidatorUpdates)(nil), // 3: opinit.opchild.v1.ValidatorUpdates + (*BridgeInfo)(nil), // 4: opinit.opchild.v1.BridgeInfo + (*CoinsWrapper)(nil), // 5: opinit.opchild.v1.CoinsWrapper + (*v1beta1.DecCoin)(nil), // 6: cosmos.base.v1beta1.DecCoin + (*anypb.Any)(nil), // 7: google.protobuf.Any + (*abci.ValidatorUpdate)(nil), // 8: tendermint.abci.ValidatorUpdate + (*v1.BridgeConfig)(nil), // 9: opinit.ophost.v1.BridgeConfig + (*v1beta1.Coin)(nil), // 10: cosmos.base.v1beta1.Coin } var file_opinit_opchild_v1_types_proto_depIdxs = []int32{ - 8, // 0: opinit.opchild.v1.Params.min_gas_prices:type_name -> cosmos.base.v1beta1.DecCoin - 9, // 1: opinit.opchild.v1.Validator.consensus_pubkey:type_name -> google.protobuf.Any - 10, // 2: opinit.opchild.v1.ValidatorUpdates.updates:type_name -> tendermint.abci.ValidatorUpdate - 11, // 3: opinit.opchild.v1.BridgeInfo.bridge_config:type_name -> opinit.ophost.v1.BridgeConfig - 12, // 4: opinit.opchild.v1.PendingDeposits.coins:type_name -> cosmos.base.v1beta1.Coin - 12, // 5: opinit.opchild.v1.CoinsWrapper.coins:type_name -> cosmos.base.v1beta1.Coin - 13, // 6: opinit.opchild.v1.WithdrawalCommitment.submit_time:type_name -> google.protobuf.Timestamp - 7, // [7:7] is the sub-list for method output_type - 7, // [7:7] is the sub-list for method input_type - 7, // [7:7] is the sub-list for extension type_name - 7, // [7:7] is the sub-list for extension extendee - 0, // [0:7] is the sub-list for field type_name + 6, // 0: opinit.opchild.v1.Params.min_gas_prices:type_name -> cosmos.base.v1beta1.DecCoin + 7, // 1: opinit.opchild.v1.Validator.consensus_pubkey:type_name -> google.protobuf.Any + 8, // 2: opinit.opchild.v1.ValidatorUpdates.updates:type_name -> tendermint.abci.ValidatorUpdate + 9, // 3: opinit.opchild.v1.BridgeInfo.bridge_config:type_name -> opinit.ophost.v1.BridgeConfig + 10, // 4: opinit.opchild.v1.CoinsWrapper.coins:type_name -> cosmos.base.v1beta1.Coin + 5, // [5:5] is the sub-list for method output_type + 5, // [5:5] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name } func init() { file_opinit_opchild_v1_types_proto_init() } @@ -4963,18 +3788,6 @@ func file_opinit_opchild_v1_types_proto_init() { } } file_opinit_opchild_v1_types_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PendingDeposits); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_opinit_opchild_v1_types_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CoinsWrapper); i { case 0: return &v.state @@ -4986,18 +3799,6 @@ func file_opinit_opchild_v1_types_proto_init() { return nil } } - file_opinit_opchild_v1_types_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WithdrawalCommitment); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } } type x struct{} out := protoimpl.TypeBuilder{ @@ -5005,7 +3806,7 @@ func file_opinit_opchild_v1_types_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_opinit_opchild_v1_types_proto_rawDesc, NumEnums: 1, - NumMessages: 7, + NumMessages: 5, NumExtensions: 0, NumServices: 0, }, diff --git a/api/opinit/ophost/v1/tx.pulsar.go b/api/opinit/ophost/v1/tx.pulsar.go index f6696a34..ce03bcbf 100644 --- a/api/opinit/ophost/v1/tx.pulsar.go +++ b/api/opinit/ophost/v1/tx.pulsar.go @@ -2,7 +2,6 @@ package ophostv1 import ( - v1 "buf.build/gen/go/cometbft/cometbft/protocolbuffers/go/cometbft/crypto/v1" _ "cosmossdk.io/api/amino" v1beta1 "cosmossdk.io/api/cosmos/base/v1beta1" _ "cosmossdk.io/api/cosmos/msg/v1" @@ -6135,1491 +6134,6 @@ func (x *fastReflection_MsgFinalizeTokenWithdrawalResponse) ProtoMethods() *prot } } -var ( - md_MsgForceTokenWithdrawal protoreflect.MessageDescriptor - fd_MsgForceTokenWithdrawal_bridge_id protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_output_index protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_sequence protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_sender protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_receiver protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_amount protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_commitment_proof protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_app_hash protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_app_hash_proof protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_version protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_storage_root protoreflect.FieldDescriptor - fd_MsgForceTokenWithdrawal_last_block_hash protoreflect.FieldDescriptor -) - -func init() { - file_opinit_ophost_v1_tx_proto_init() - md_MsgForceTokenWithdrawal = File_opinit_ophost_v1_tx_proto.Messages().ByName("MsgForceTokenWithdrawal") - fd_MsgForceTokenWithdrawal_bridge_id = md_MsgForceTokenWithdrawal.Fields().ByName("bridge_id") - fd_MsgForceTokenWithdrawal_output_index = md_MsgForceTokenWithdrawal.Fields().ByName("output_index") - fd_MsgForceTokenWithdrawal_sequence = md_MsgForceTokenWithdrawal.Fields().ByName("sequence") - fd_MsgForceTokenWithdrawal_sender = md_MsgForceTokenWithdrawal.Fields().ByName("sender") - fd_MsgForceTokenWithdrawal_receiver = md_MsgForceTokenWithdrawal.Fields().ByName("receiver") - fd_MsgForceTokenWithdrawal_amount = md_MsgForceTokenWithdrawal.Fields().ByName("amount") - fd_MsgForceTokenWithdrawal_commitment_proof = md_MsgForceTokenWithdrawal.Fields().ByName("commitment_proof") - fd_MsgForceTokenWithdrawal_app_hash = md_MsgForceTokenWithdrawal.Fields().ByName("app_hash") - fd_MsgForceTokenWithdrawal_app_hash_proof = md_MsgForceTokenWithdrawal.Fields().ByName("app_hash_proof") - fd_MsgForceTokenWithdrawal_version = md_MsgForceTokenWithdrawal.Fields().ByName("version") - fd_MsgForceTokenWithdrawal_storage_root = md_MsgForceTokenWithdrawal.Fields().ByName("storage_root") - fd_MsgForceTokenWithdrawal_last_block_hash = md_MsgForceTokenWithdrawal.Fields().ByName("last_block_hash") -} - -var _ protoreflect.Message = (*fastReflection_MsgForceTokenWithdrawal)(nil) - -type fastReflection_MsgForceTokenWithdrawal MsgForceTokenWithdrawal - -func (x *MsgForceTokenWithdrawal) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgForceTokenWithdrawal)(x) -} - -func (x *MsgForceTokenWithdrawal) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -var _fastReflection_MsgForceTokenWithdrawal_messageType fastReflection_MsgForceTokenWithdrawal_messageType -var _ protoreflect.MessageType = fastReflection_MsgForceTokenWithdrawal_messageType{} - -type fastReflection_MsgForceTokenWithdrawal_messageType struct{} - -func (x fastReflection_MsgForceTokenWithdrawal_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgForceTokenWithdrawal)(nil) -} -func (x fastReflection_MsgForceTokenWithdrawal_messageType) New() protoreflect.Message { - return new(fastReflection_MsgForceTokenWithdrawal) -} -func (x fastReflection_MsgForceTokenWithdrawal_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgForceTokenWithdrawal -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgForceTokenWithdrawal) Descriptor() protoreflect.MessageDescriptor { - return md_MsgForceTokenWithdrawal -} - -// Type returns the message type, which encapsulates both Go and protobuf -// type information. If the Go type information is not needed, -// it is recommended that the message descriptor be used instead. -func (x *fastReflection_MsgForceTokenWithdrawal) Type() protoreflect.MessageType { - return _fastReflection_MsgForceTokenWithdrawal_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgForceTokenWithdrawal) New() protoreflect.Message { - return new(fastReflection_MsgForceTokenWithdrawal) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgForceTokenWithdrawal) Interface() protoreflect.ProtoMessage { - return (*MsgForceTokenWithdrawal)(x) -} - -// Range iterates over every populated field in an undefined order, -// calling f for each field descriptor and value encountered. -// Range returns immediately if f returns false. -// While iterating, mutating operations may only be performed -// on the current field descriptor. -func (x *fastReflection_MsgForceTokenWithdrawal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.BridgeId != uint64(0) { - value := protoreflect.ValueOfUint64(x.BridgeId) - if !f(fd_MsgForceTokenWithdrawal_bridge_id, value) { - return - } - } - if x.OutputIndex != uint64(0) { - value := protoreflect.ValueOfUint64(x.OutputIndex) - if !f(fd_MsgForceTokenWithdrawal_output_index, value) { - return - } - } - if x.Sequence != uint64(0) { - value := protoreflect.ValueOfUint64(x.Sequence) - if !f(fd_MsgForceTokenWithdrawal_sequence, value) { - return - } - } - if x.Sender != "" { - value := protoreflect.ValueOfString(x.Sender) - if !f(fd_MsgForceTokenWithdrawal_sender, value) { - return - } - } - if x.Receiver != "" { - value := protoreflect.ValueOfString(x.Receiver) - if !f(fd_MsgForceTokenWithdrawal_receiver, value) { - return - } - } - if x.Amount != nil { - value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) - if !f(fd_MsgForceTokenWithdrawal_amount, value) { - return - } - } - if x.CommitmentProof != nil { - value := protoreflect.ValueOfMessage(x.CommitmentProof.ProtoReflect()) - if !f(fd_MsgForceTokenWithdrawal_commitment_proof, value) { - return - } - } - if len(x.AppHash) != 0 { - value := protoreflect.ValueOfBytes(x.AppHash) - if !f(fd_MsgForceTokenWithdrawal_app_hash, value) { - return - } - } - if x.AppHashProof != nil { - value := protoreflect.ValueOfMessage(x.AppHashProof.ProtoReflect()) - if !f(fd_MsgForceTokenWithdrawal_app_hash_proof, value) { - return - } - } - if len(x.Version) != 0 { - value := protoreflect.ValueOfBytes(x.Version) - if !f(fd_MsgForceTokenWithdrawal_version, value) { - return - } - } - if len(x.StorageRoot) != 0 { - value := protoreflect.ValueOfBytes(x.StorageRoot) - if !f(fd_MsgForceTokenWithdrawal_storage_root, value) { - return - } - } - if len(x.LastBlockHash) != 0 { - value := protoreflect.ValueOfBytes(x.LastBlockHash) - if !f(fd_MsgForceTokenWithdrawal_last_block_hash, value) { - return - } - } -} - -// Has reports whether a field is populated. -// -// Some fields have the property of nullability where it is possible to -// distinguish between the default value of a field and whether the field -// was explicitly populated with the default value. Singular message fields, -// member fields of a oneof, and proto2 scalar fields are nullable. Such -// fields are populated only if explicitly set. -// -// In other cases (aside from the nullable cases above), -// a proto3 scalar field is populated if it contains a non-zero value, and -// a repeated field is populated if it is non-empty. -func (x *fastReflection_MsgForceTokenWithdrawal) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "opinit.ophost.v1.MsgForceTokenWithdrawal.bridge_id": - return x.BridgeId != uint64(0) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.output_index": - return x.OutputIndex != uint64(0) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sequence": - return x.Sequence != uint64(0) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sender": - return x.Sender != "" - case "opinit.ophost.v1.MsgForceTokenWithdrawal.receiver": - return x.Receiver != "" - case "opinit.ophost.v1.MsgForceTokenWithdrawal.amount": - return x.Amount != nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.commitment_proof": - return x.CommitmentProof != nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash": - return len(x.AppHash) != 0 - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash_proof": - return x.AppHashProof != nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.version": - return len(x.Version) != 0 - case "opinit.ophost.v1.MsgForceTokenWithdrawal.storage_root": - return len(x.StorageRoot) != 0 - case "opinit.ophost.v1.MsgForceTokenWithdrawal.last_block_hash": - return len(x.LastBlockHash) != 0 - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawal")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawal does not contain field %s", fd.FullName())) - } -} - -// Clear clears the field such that a subsequent Has call reports false. -// -// Clearing an extension field clears both the extension type and value -// associated with the given field number. -// -// Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawal) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "opinit.ophost.v1.MsgForceTokenWithdrawal.bridge_id": - x.BridgeId = uint64(0) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.output_index": - x.OutputIndex = uint64(0) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sequence": - x.Sequence = uint64(0) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sender": - x.Sender = "" - case "opinit.ophost.v1.MsgForceTokenWithdrawal.receiver": - x.Receiver = "" - case "opinit.ophost.v1.MsgForceTokenWithdrawal.amount": - x.Amount = nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.commitment_proof": - x.CommitmentProof = nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash": - x.AppHash = nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash_proof": - x.AppHashProof = nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.version": - x.Version = nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.storage_root": - x.StorageRoot = nil - case "opinit.ophost.v1.MsgForceTokenWithdrawal.last_block_hash": - x.LastBlockHash = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawal")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawal does not contain field %s", fd.FullName())) - } -} - -// Get retrieves the value for a field. -// -// For unpopulated scalars, it returns the default value, where -// the default value of a bytes scalar is guaranteed to be a copy. -// For unpopulated composite types, it returns an empty, read-only view -// of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgForceTokenWithdrawal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "opinit.ophost.v1.MsgForceTokenWithdrawal.bridge_id": - value := x.BridgeId - return protoreflect.ValueOfUint64(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.output_index": - value := x.OutputIndex - return protoreflect.ValueOfUint64(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sequence": - value := x.Sequence - return protoreflect.ValueOfUint64(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sender": - value := x.Sender - return protoreflect.ValueOfString(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.receiver": - value := x.Receiver - return protoreflect.ValueOfString(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.amount": - value := x.Amount - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.commitment_proof": - value := x.CommitmentProof - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash": - value := x.AppHash - return protoreflect.ValueOfBytes(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash_proof": - value := x.AppHashProof - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.version": - value := x.Version - return protoreflect.ValueOfBytes(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.storage_root": - value := x.StorageRoot - return protoreflect.ValueOfBytes(value) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.last_block_hash": - value := x.LastBlockHash - return protoreflect.ValueOfBytes(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawal")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawal does not contain field %s", descriptor.FullName())) - } -} - -// Set stores the value for a field. -// -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType. -// When setting a composite type, it is unspecified whether the stored value -// aliases the source's memory in any way. If the composite value is an -// empty, read-only value, then it panics. -// -// Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "opinit.ophost.v1.MsgForceTokenWithdrawal.bridge_id": - x.BridgeId = value.Uint() - case "opinit.ophost.v1.MsgForceTokenWithdrawal.output_index": - x.OutputIndex = value.Uint() - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sequence": - x.Sequence = value.Uint() - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sender": - x.Sender = value.Interface().(string) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.receiver": - x.Receiver = value.Interface().(string) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.amount": - x.Amount = value.Message().Interface().(*v1beta1.Coin) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.commitment_proof": - x.CommitmentProof = value.Message().Interface().(*v1.ProofOps) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash": - x.AppHash = value.Bytes() - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash_proof": - x.AppHashProof = value.Message().Interface().(*v1.Proof) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.version": - x.Version = value.Bytes() - case "opinit.ophost.v1.MsgForceTokenWithdrawal.storage_root": - x.StorageRoot = value.Bytes() - case "opinit.ophost.v1.MsgForceTokenWithdrawal.last_block_hash": - x.LastBlockHash = value.Bytes() - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawal")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawal does not contain field %s", fd.FullName())) - } -} - -// Mutable returns a mutable reference to a composite type. -// -// If the field is unpopulated, it may allocate a composite value. -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType -// if not already stored. -// It panics if the field does not contain a composite type. -// -// Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.ophost.v1.MsgForceTokenWithdrawal.amount": - if x.Amount == nil { - x.Amount = new(v1beta1.Coin) - } - return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.commitment_proof": - if x.CommitmentProof == nil { - x.CommitmentProof = new(v1.ProofOps) - } - return protoreflect.ValueOfMessage(x.CommitmentProof.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash_proof": - if x.AppHashProof == nil { - x.AppHashProof = new(v1.Proof) - } - return protoreflect.ValueOfMessage(x.AppHashProof.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.bridge_id": - panic(fmt.Errorf("field bridge_id of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.output_index": - panic(fmt.Errorf("field output_index of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sequence": - panic(fmt.Errorf("field sequence of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sender": - panic(fmt.Errorf("field sender of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.receiver": - panic(fmt.Errorf("field receiver of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash": - panic(fmt.Errorf("field app_hash of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.version": - panic(fmt.Errorf("field version of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.storage_root": - panic(fmt.Errorf("field storage_root of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.last_block_hash": - panic(fmt.Errorf("field last_block_hash of message opinit.ophost.v1.MsgForceTokenWithdrawal is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawal")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawal does not contain field %s", fd.FullName())) - } -} - -// NewField returns a new value that is assignable to the field -// for the given descriptor. For scalars, this returns the default value. -// For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_MsgForceTokenWithdrawal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "opinit.ophost.v1.MsgForceTokenWithdrawal.bridge_id": - return protoreflect.ValueOfUint64(uint64(0)) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.output_index": - return protoreflect.ValueOfUint64(uint64(0)) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sequence": - return protoreflect.ValueOfUint64(uint64(0)) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.sender": - return protoreflect.ValueOfString("") - case "opinit.ophost.v1.MsgForceTokenWithdrawal.receiver": - return protoreflect.ValueOfString("") - case "opinit.ophost.v1.MsgForceTokenWithdrawal.amount": - m := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.commitment_proof": - m := new(v1.ProofOps) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash": - return protoreflect.ValueOfBytes(nil) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash_proof": - m := new(v1.Proof) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.version": - return protoreflect.ValueOfBytes(nil) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.storage_root": - return protoreflect.ValueOfBytes(nil) - case "opinit.ophost.v1.MsgForceTokenWithdrawal.last_block_hash": - return protoreflect.ValueOfBytes(nil) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawal")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawal does not contain field %s", fd.FullName())) - } -} - -// WhichOneof reports which field within the oneof is populated, -// returning nil if none are populated. -// It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_MsgForceTokenWithdrawal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in opinit.ophost.v1.MsgForceTokenWithdrawal", d.FullName())) - } - panic("unreachable") -} - -// GetUnknown retrieves the entire list of unknown fields. -// The caller may only mutate the contents of the RawFields -// if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_MsgForceTokenWithdrawal) GetUnknown() protoreflect.RawFields { - return x.unknownFields -} - -// SetUnknown stores an entire list of unknown fields. -// The raw fields must be syntactically valid according to the wire format. -// An implementation may panic if this is not the case. -// Once stored, the caller must not mutate the content of the RawFields. -// An empty RawFields may be passed to clear the fields. -// -// SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawal) SetUnknown(fields protoreflect.RawFields) { - x.unknownFields = fields -} - -// IsValid reports whether the message is valid. -// -// An invalid message is an empty, read-only value. -// -// An invalid message often corresponds to a nil pointer of the concrete -// message type, but the details are implementation dependent. -// Validity is not part of the protobuf data model, and may not -// be preserved in marshaling or other operations. -func (x *fastReflection_MsgForceTokenWithdrawal) IsValid() bool { - return x != nil -} - -// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. -// This method may return nil. -// -// The returned methods type is identical to -// "google.golang.org/protobuf/runtime/protoiface".Methods. -// Consult the protoiface package documentation for details. -func (x *fastReflection_MsgForceTokenWithdrawal) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgForceTokenWithdrawal) - if x == nil { - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: 0, - } - } - options := runtime.SizeInputToOptions(input) - _ = options - var n int - var l int - _ = l - if x.BridgeId != 0 { - n += 1 + runtime.Sov(uint64(x.BridgeId)) - } - if x.OutputIndex != 0 { - n += 1 + runtime.Sov(uint64(x.OutputIndex)) - } - if x.Sequence != 0 { - n += 1 + runtime.Sov(uint64(x.Sequence)) - } - l = len(x.Sender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Receiver) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.Amount != nil { - l = options.Size(x.Amount) - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.CommitmentProof != nil { - l = options.Size(x.CommitmentProof) - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.AppHash) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.AppHashProof != nil { - l = options.Size(x.AppHashProof) - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Version) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.StorageRoot) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.LastBlockHash) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgForceTokenWithdrawal) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.LastBlockHash) > 0 { - i -= len(x.LastBlockHash) - copy(dAtA[i:], x.LastBlockHash) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.LastBlockHash))) - i-- - dAtA[i] = 0x62 - } - if len(x.StorageRoot) > 0 { - i -= len(x.StorageRoot) - copy(dAtA[i:], x.StorageRoot) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.StorageRoot))) - i-- - dAtA[i] = 0x5a - } - if len(x.Version) > 0 { - i -= len(x.Version) - copy(dAtA[i:], x.Version) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Version))) - i-- - dAtA[i] = 0x52 - } - if x.AppHashProof != nil { - encoded, err := options.Marshal(x.AppHashProof) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x4a - } - if len(x.AppHash) > 0 { - i -= len(x.AppHash) - copy(dAtA[i:], x.AppHash) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.AppHash))) - i-- - dAtA[i] = 0x42 - } - if x.CommitmentProof != nil { - encoded, err := options.Marshal(x.CommitmentProof) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x3a - } - if x.Amount != nil { - encoded, err := options.Marshal(x.Amount) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x32 - } - if len(x.Sender) > 0 { - i -= len(x.Sender) - copy(dAtA[i:], x.Sender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) - i-- - dAtA[i] = 0x2a - } - if x.Sequence != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.Sequence)) - i-- - dAtA[i] = 0x20 - } - if x.OutputIndex != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.OutputIndex)) - i-- - dAtA[i] = 0x18 - } - if x.BridgeId != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.BridgeId)) - i-- - dAtA[i] = 0x10 - } - if len(x.Receiver) > 0 { - i -= len(x.Receiver) - copy(dAtA[i:], x.Receiver) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Receiver))) - i-- - dAtA[i] = 0xa - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgForceTokenWithdrawal) - if x == nil { - return protoiface.UnmarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Flags: input.Flags, - }, nil - } - options := runtime.UnmarshalInputToOptions(input) - _ = options - dAtA := input.Buf - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - 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++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgForceTokenWithdrawal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgForceTokenWithdrawal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgeId", wireType) - } - x.BridgeId = 0 - 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++ - x.BridgeId |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field OutputIndex", wireType) - } - x.OutputIndex = 0 - 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++ - x.OutputIndex |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sequence", wireType) - } - x.Sequence = 0 - 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++ - x.Sequence |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - 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++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 1: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Receiver", wireType) - } - var stringLen uint64 - 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++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Receiver = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.Amount == nil { - x.Amount = &v1beta1.Coin{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CommitmentProof", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.CommitmentProof == nil { - x.CommitmentProof = &v1.ProofOps{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.CommitmentProof); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 8: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AppHash", wireType) - } - var byteLen 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++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.AppHash = append(x.AppHash[:0], dAtA[iNdEx:postIndex]...) - if x.AppHash == nil { - x.AppHash = []byte{} - } - iNdEx = postIndex - case 9: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AppHashProof", wireType) - } - var msglen 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++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.AppHashProof == nil { - x.AppHashProof = &v1.Proof{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.AppHashProof); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Version", wireType) - } - var byteLen 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++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Version = append(x.Version[:0], dAtA[iNdEx:postIndex]...) - if x.Version == nil { - x.Version = []byte{} - } - iNdEx = postIndex - case 11: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field StorageRoot", wireType) - } - var byteLen 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++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.StorageRoot = append(x.StorageRoot[:0], dAtA[iNdEx:postIndex]...) - if x.StorageRoot == nil { - x.StorageRoot = []byte{} - } - iNdEx = postIndex - case 12: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field LastBlockHash", wireType) - } - var byteLen 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++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.LastBlockHash = append(x.LastBlockHash[:0], dAtA[iNdEx:postIndex]...) - if x.LastBlockHash == nil { - x.LastBlockHash = []byte{} - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgForceTokenWithdrawalResponse protoreflect.MessageDescriptor -) - -func init() { - file_opinit_ophost_v1_tx_proto_init() - md_MsgForceTokenWithdrawalResponse = File_opinit_ophost_v1_tx_proto.Messages().ByName("MsgForceTokenWithdrawalResponse") -} - -var _ protoreflect.Message = (*fastReflection_MsgForceTokenWithdrawalResponse)(nil) - -type fastReflection_MsgForceTokenWithdrawalResponse MsgForceTokenWithdrawalResponse - -func (x *MsgForceTokenWithdrawalResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgForceTokenWithdrawalResponse)(x) -} - -func (x *MsgForceTokenWithdrawalResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -var _fastReflection_MsgForceTokenWithdrawalResponse_messageType fastReflection_MsgForceTokenWithdrawalResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgForceTokenWithdrawalResponse_messageType{} - -type fastReflection_MsgForceTokenWithdrawalResponse_messageType struct{} - -func (x fastReflection_MsgForceTokenWithdrawalResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgForceTokenWithdrawalResponse)(nil) -} -func (x fastReflection_MsgForceTokenWithdrawalResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgForceTokenWithdrawalResponse) -} -func (x fastReflection_MsgForceTokenWithdrawalResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgForceTokenWithdrawalResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgForceTokenWithdrawalResponse -} - -// Type returns the message type, which encapsulates both Go and protobuf -// type information. If the Go type information is not needed, -// it is recommended that the message descriptor be used instead. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgForceTokenWithdrawalResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) New() protoreflect.Message { - return new(fastReflection_MsgForceTokenWithdrawalResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Interface() protoreflect.ProtoMessage { - return (*MsgForceTokenWithdrawalResponse)(x) -} - -// Range iterates over every populated field in an undefined order, -// calling f for each field descriptor and value encountered. -// Range returns immediately if f returns false. -// While iterating, mutating operations may only be performed -// on the current field descriptor. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { -} - -// Has reports whether a field is populated. -// -// Some fields have the property of nullability where it is possible to -// distinguish between the default value of a field and whether the field -// was explicitly populated with the default value. Singular message fields, -// member fields of a oneof, and proto2 scalar fields are nullable. Such -// fields are populated only if explicitly set. -// -// In other cases (aside from the nullable cases above), -// a proto3 scalar field is populated if it contains a non-zero value, and -// a repeated field is populated if it is non-empty. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawalResponse")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawalResponse does not contain field %s", fd.FullName())) - } -} - -// Clear clears the field such that a subsequent Has call reports false. -// -// Clearing an extension field clears both the extension type and value -// associated with the given field number. -// -// Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawalResponse")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawalResponse does not contain field %s", fd.FullName())) - } -} - -// Get retrieves the value for a field. -// -// For unpopulated scalars, it returns the default value, where -// the default value of a bytes scalar is guaranteed to be a copy. -// For unpopulated composite types, it returns an empty, read-only view -// of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawalResponse")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawalResponse does not contain field %s", descriptor.FullName())) - } -} - -// Set stores the value for a field. -// -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType. -// When setting a composite type, it is unspecified whether the stored value -// aliases the source's memory in any way. If the composite value is an -// empty, read-only value, then it panics. -// -// Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawalResponse")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawalResponse does not contain field %s", fd.FullName())) - } -} - -// Mutable returns a mutable reference to a composite type. -// -// If the field is unpopulated, it may allocate a composite value. -// For a field belonging to a oneof, it implicitly clears any other field -// that may be currently set within the same oneof. -// For extension fields, it implicitly stores the provided ExtensionType -// if not already stored. -// It panics if the field does not contain a composite type. -// -// Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawalResponse")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawalResponse does not contain field %s", fd.FullName())) - } -} - -// NewField returns a new value that is assignable to the field -// for the given descriptor. For scalars, this returns the default value. -// For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgForceTokenWithdrawalResponse")) - } - panic(fmt.Errorf("message opinit.ophost.v1.MsgForceTokenWithdrawalResponse does not contain field %s", fd.FullName())) - } -} - -// WhichOneof reports which field within the oneof is populated, -// returning nil if none are populated. -// It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in opinit.ophost.v1.MsgForceTokenWithdrawalResponse", d.FullName())) - } - panic("unreachable") -} - -// GetUnknown retrieves the entire list of unknown fields. -// The caller may only mutate the contents of the RawFields -// if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) GetUnknown() protoreflect.RawFields { - return x.unknownFields -} - -// SetUnknown stores an entire list of unknown fields. -// The raw fields must be syntactically valid according to the wire format. -// An implementation may panic if this is not the case. -// Once stored, the caller must not mutate the content of the RawFields. -// An empty RawFields may be passed to clear the fields. -// -// SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) SetUnknown(fields protoreflect.RawFields) { - x.unknownFields = fields -} - -// IsValid reports whether the message is valid. -// -// An invalid message is an empty, read-only value. -// -// An invalid message often corresponds to a nil pointer of the concrete -// message type, but the details are implementation dependent. -// Validity is not part of the protobuf data model, and may not -// be preserved in marshaling or other operations. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) IsValid() bool { - return x != nil -} - -// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. -// This method may return nil. -// -// The returned methods type is identical to -// "google.golang.org/protobuf/runtime/protoiface".Methods. -// Consult the protoiface package documentation for details. -func (x *fastReflection_MsgForceTokenWithdrawalResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgForceTokenWithdrawalResponse) - if x == nil { - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: 0, - } - } - options := runtime.SizeInputToOptions(input) - _ = options - var n int - var l int - _ = l - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgForceTokenWithdrawalResponse) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgForceTokenWithdrawalResponse) - if x == nil { - return protoiface.UnmarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Flags: input.Flags, - }, nil - } - options := runtime.UnmarshalInputToOptions(input) - _ = options - dAtA := input.Buf - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - 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++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgForceTokenWithdrawalResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgForceTokenWithdrawalResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - var ( md_MsgUpdateProposer protoreflect.MessageDescriptor fd_MsgUpdateProposer_authority protoreflect.FieldDescriptor @@ -7644,7 +6158,7 @@ func (x *MsgUpdateProposer) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateProposer) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[14] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8174,7 +6688,7 @@ func (x *MsgUpdateProposerResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateProposerResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[15] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8674,7 +7188,7 @@ func (x *MsgUpdateChallengers) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateChallengers) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[16] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9218,7 +7732,7 @@ func (x *MsgUpdateChallengersResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateChallengersResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[17] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9672,7 +8186,7 @@ func (x *MsgUpdateBatchInfo) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateBatchInfo) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10217,7 +8731,7 @@ func (x *MsgUpdateBatchInfoResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateBatchInfoResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10671,7 +9185,7 @@ func (x *MsgUpdateOracleConfig) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateOracleConfig) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11187,7 +9701,7 @@ func (x *MsgUpdateOracleConfigResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateOracleConfigResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11549,7 +10063,7 @@ func (x *MsgUpdateMetadata) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateMetadata) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[22] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12081,7 +10595,7 @@ func (x *MsgUpdateMetadataResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateMetadataResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[23] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12533,7 +11047,7 @@ func (x *MsgUpdateParams) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateParams) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[24] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13028,7 +11542,7 @@ func (x *MsgUpdateParamsResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateParamsResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[25] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13955,161 +12469,6 @@ func (*MsgFinalizeTokenWithdrawalResponse) Descriptor() ([]byte, []int) { return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{11} } -// MsgForceTokenWithdrawal is a message to force a token withdrawal from L2 to L1. -type MsgForceTokenWithdrawal struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // anyone can force a token withdrawal from L2 to L1 even this is not the receiver. - BridgeId uint64 `protobuf:"varint,2,opt,name=bridge_id,json=bridgeId,proto3" json:"bridge_id,omitempty"` - OutputIndex uint64 `protobuf:"varint,3,opt,name=output_index,json=outputIndex,proto3" json:"output_index,omitempty"` - // withdrawal commitments and proofs - Sequence uint64 `protobuf:"varint,4,opt,name=sequence,proto3" json:"sequence,omitempty"` - Sender string `protobuf:"bytes,5,opt,name=sender,proto3" json:"sender,omitempty"` - Receiver string `protobuf:"bytes,1,opt,name=receiver,proto3" json:"receiver,omitempty"` - Amount *v1beta1.Coin `protobuf:"bytes,6,opt,name=amount,proto3" json:"amount,omitempty"` - CommitmentProof *v1.ProofOps `protobuf:"bytes,7,opt,name=commitment_proof,json=commitmentProof,proto3" json:"commitment_proof,omitempty"` - // app hash and proof - AppHash []byte `protobuf:"bytes,8,opt,name=app_hash,json=appHash,proto3" json:"app_hash,omitempty"` - AppHashProof *v1.Proof `protobuf:"bytes,9,opt,name=app_hash_proof,json=appHashProof,proto3" json:"app_hash_proof,omitempty"` - // output root proofs - Version []byte `protobuf:"bytes,10,opt,name=version,proto3" json:"version,omitempty"` - StorageRoot []byte `protobuf:"bytes,11,opt,name=storage_root,json=storageRoot,proto3" json:"storage_root,omitempty"` - LastBlockHash []byte `protobuf:"bytes,12,opt,name=last_block_hash,json=lastBlockHash,proto3" json:"last_block_hash,omitempty"` -} - -func (x *MsgForceTokenWithdrawal) Reset() { - *x = MsgForceTokenWithdrawal{} - if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgForceTokenWithdrawal) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgForceTokenWithdrawal) ProtoMessage() {} - -// Deprecated: Use MsgForceTokenWithdrawal.ProtoReflect.Descriptor instead. -func (*MsgForceTokenWithdrawal) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{12} -} - -func (x *MsgForceTokenWithdrawal) GetBridgeId() uint64 { - if x != nil { - return x.BridgeId - } - return 0 -} - -func (x *MsgForceTokenWithdrawal) GetOutputIndex() uint64 { - if x != nil { - return x.OutputIndex - } - return 0 -} - -func (x *MsgForceTokenWithdrawal) GetSequence() uint64 { - if x != nil { - return x.Sequence - } - return 0 -} - -func (x *MsgForceTokenWithdrawal) GetSender() string { - if x != nil { - return x.Sender - } - return "" -} - -func (x *MsgForceTokenWithdrawal) GetReceiver() string { - if x != nil { - return x.Receiver - } - return "" -} - -func (x *MsgForceTokenWithdrawal) GetAmount() *v1beta1.Coin { - if x != nil { - return x.Amount - } - return nil -} - -func (x *MsgForceTokenWithdrawal) GetCommitmentProof() *v1.ProofOps { - if x != nil { - return x.CommitmentProof - } - return nil -} - -func (x *MsgForceTokenWithdrawal) GetAppHash() []byte { - if x != nil { - return x.AppHash - } - return nil -} - -func (x *MsgForceTokenWithdrawal) GetAppHashProof() *v1.Proof { - if x != nil { - return x.AppHashProof - } - return nil -} - -func (x *MsgForceTokenWithdrawal) GetVersion() []byte { - if x != nil { - return x.Version - } - return nil -} - -func (x *MsgForceTokenWithdrawal) GetStorageRoot() []byte { - if x != nil { - return x.StorageRoot - } - return nil -} - -func (x *MsgForceTokenWithdrawal) GetLastBlockHash() []byte { - if x != nil { - return x.LastBlockHash - } - return nil -} - -// MsgForceTokenWithdrawalResponse returns a message handle result. -type MsgForceTokenWithdrawalResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MsgForceTokenWithdrawalResponse) Reset() { - *x = MsgForceTokenWithdrawalResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgForceTokenWithdrawalResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgForceTokenWithdrawalResponse) ProtoMessage() {} - -// Deprecated: Use MsgForceTokenWithdrawalResponse.ProtoReflect.Descriptor instead. -func (*MsgForceTokenWithdrawalResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{13} -} - // MsgUpdateProposer is a message to change a proposer type MsgUpdateProposer struct { state protoimpl.MessageState @@ -14126,7 +12485,7 @@ type MsgUpdateProposer struct { func (x *MsgUpdateProposer) Reset() { *x = MsgUpdateProposer{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[14] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14140,7 +12499,7 @@ func (*MsgUpdateProposer) ProtoMessage() {} // Deprecated: Use MsgUpdateProposer.ProtoReflect.Descriptor instead. func (*MsgUpdateProposer) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{14} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{12} } func (x *MsgUpdateProposer) GetAuthority() string { @@ -14179,7 +12538,7 @@ type MsgUpdateProposerResponse struct { func (x *MsgUpdateProposerResponse) Reset() { *x = MsgUpdateProposerResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[15] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14193,7 +12552,7 @@ func (*MsgUpdateProposerResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateProposerResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateProposerResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{15} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{13} } func (x *MsgUpdateProposerResponse) GetOutputIndex() uint64 { @@ -14228,7 +12587,7 @@ type MsgUpdateChallengers struct { func (x *MsgUpdateChallengers) Reset() { *x = MsgUpdateChallengers{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[16] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14242,7 +12601,7 @@ func (*MsgUpdateChallengers) ProtoMessage() {} // Deprecated: Use MsgUpdateChallengers.ProtoReflect.Descriptor instead. func (*MsgUpdateChallengers) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{16} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{14} } func (x *MsgUpdateChallengers) GetAuthority() string { @@ -14281,7 +12640,7 @@ type MsgUpdateChallengersResponse struct { func (x *MsgUpdateChallengersResponse) Reset() { *x = MsgUpdateChallengersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[17] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14295,7 +12654,7 @@ func (*MsgUpdateChallengersResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateChallengersResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateChallengersResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{17} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{15} } func (x *MsgUpdateChallengersResponse) GetOutputIndex() uint64 { @@ -14328,7 +12687,7 @@ type MsgUpdateBatchInfo struct { func (x *MsgUpdateBatchInfo) Reset() { *x = MsgUpdateBatchInfo{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14342,7 +12701,7 @@ func (*MsgUpdateBatchInfo) ProtoMessage() {} // Deprecated: Use MsgUpdateBatchInfo.ProtoReflect.Descriptor instead. func (*MsgUpdateBatchInfo) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{18} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{16} } func (x *MsgUpdateBatchInfo) GetAuthority() string { @@ -14381,7 +12740,7 @@ type MsgUpdateBatchInfoResponse struct { func (x *MsgUpdateBatchInfoResponse) Reset() { *x = MsgUpdateBatchInfoResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14395,7 +12754,7 @@ func (*MsgUpdateBatchInfoResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateBatchInfoResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateBatchInfoResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{19} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{17} } func (x *MsgUpdateBatchInfoResponse) GetOutputIndex() uint64 { @@ -14428,7 +12787,7 @@ type MsgUpdateOracleConfig struct { func (x *MsgUpdateOracleConfig) Reset() { *x = MsgUpdateOracleConfig{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14442,7 +12801,7 @@ func (*MsgUpdateOracleConfig) ProtoMessage() {} // Deprecated: Use MsgUpdateOracleConfig.ProtoReflect.Descriptor instead. func (*MsgUpdateOracleConfig) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{20} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{18} } func (x *MsgUpdateOracleConfig) GetAuthority() string { @@ -14476,7 +12835,7 @@ type MsgUpdateOracleConfigResponse struct { func (x *MsgUpdateOracleConfigResponse) Reset() { *x = MsgUpdateOracleConfigResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14490,7 +12849,7 @@ func (*MsgUpdateOracleConfigResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateOracleConfigResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateOracleConfigResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{21} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{19} } // MsgUpdateMetadata is a message to change metadata @@ -14512,7 +12871,7 @@ type MsgUpdateMetadata struct { func (x *MsgUpdateMetadata) Reset() { *x = MsgUpdateMetadata{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[22] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14526,7 +12885,7 @@ func (*MsgUpdateMetadata) ProtoMessage() {} // Deprecated: Use MsgUpdateMetadata.ProtoReflect.Descriptor instead. func (*MsgUpdateMetadata) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{22} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{20} } func (x *MsgUpdateMetadata) GetAuthority() string { @@ -14565,7 +12924,7 @@ type MsgUpdateMetadataResponse struct { func (x *MsgUpdateMetadataResponse) Reset() { *x = MsgUpdateMetadataResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[23] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14579,7 +12938,7 @@ func (*MsgUpdateMetadataResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateMetadataResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateMetadataResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{23} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{21} } func (x *MsgUpdateMetadataResponse) GetOutputIndex() uint64 { @@ -14612,7 +12971,7 @@ type MsgUpdateParams struct { func (x *MsgUpdateParams) Reset() { *x = MsgUpdateParams{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[24] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14626,7 +12985,7 @@ func (*MsgUpdateParams) ProtoMessage() {} // Deprecated: Use MsgUpdateParams.ProtoReflect.Descriptor instead. func (*MsgUpdateParams) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{24} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{22} } func (x *MsgUpdateParams) GetAuthority() string { @@ -14653,7 +13012,7 @@ type MsgUpdateParamsResponse struct { func (x *MsgUpdateParamsResponse) Reset() { *x = MsgUpdateParamsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[25] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14667,7 +13026,7 @@ func (*MsgUpdateParamsResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateParamsResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{25} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{23} } var File_opinit_ophost_v1_tx_proto protoreflect.FileDescriptor @@ -14677,8 +13036,6 @@ var file_opinit_ophost_v1_tx_proto_rawDesc = []byte{ 0x76, 0x31, 0x2f, 0x74, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x1a, 0x1e, 0x63, 0x6f, 0x6d, 0x65, 0x74, 0x62, 0x66, 0x74, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, - 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6d, 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f, @@ -14764,7 +13121,7 @@ var file_opinit_ophost_v1_tx_proto_rawDesc = []byte{ 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xfb, 0x02, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, + 0x22, 0xe3, 0x02, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xd2, @@ -14773,41 +13130,38 @@ var file_opinit_ophost_v1_tx_proto_rawDesc = []byte{ 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x49, 0x64, 0x12, 0x35, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, - 0xf2, 0xde, 0x1f, 0x09, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x74, 0x6f, 0x22, 0xd2, 0xb4, 0x2d, - 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x4d, 0x0a, 0x06, 0x61, 0x6d, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 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, 0x1a, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, - 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, - 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x18, 0xc8, 0xde, 0x1f, 0x01, 0xf2, 0xde, 0x1f, 0x0b, - 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x64, 0x61, 0x74, 0x61, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x00, - 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x36, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, - 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, - 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, - 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x22, 0x3d, - 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xb2, 0x05, - 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x12, 0x31, 0x0a, 0x09, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, - 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, - 0x3a, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x17, 0xf2, 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x52, 0x0b, - 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x36, 0x0a, 0x11, 0x77, - 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, - 0x00, 0x52, 0x10, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x50, 0x72, 0x6f, - 0x6f, 0x66, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x29, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x06, + 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, + 0xf2, 0xde, 0x1f, 0x09, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x74, 0x6f, 0x22, 0x52, 0x02, 0x74, + 0x6f, 0x12, 0x4d, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 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, 0x1a, 0xc8, 0xde, + 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x18, + 0xc8, 0xde, 0x1f, 0x01, 0xf2, 0xde, 0x1f, 0x0b, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x64, 0x61, + 0x74, 0x61, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x36, + 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, + 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x22, 0x3d, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x9a, 0x05, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, + 0x61, 0x77, 0x61, 0x6c, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, + 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, + 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x17, 0xf2, + 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x36, 0x0a, 0x11, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, + 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x09, + 0xc8, 0xde, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x00, 0x52, 0x10, 0x77, 0x69, 0x74, 0x68, 0x64, + 0x72, 0x61, 0x77, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x12, 0x29, 0x0a, 0x06, 0x73, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x11, 0xf2, 0xde, 0x1f, + 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xf2, 0xde, 0x1f, 0x0f, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, @@ -14837,90 +13191,57 @@ var file_opinit_ophost_v1_tx_proto_rawDesc = []byte{ 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x22, 0x24, 0x0a, 0x22, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf8, 0x06, 0x0a, 0x17, 0x4d, 0x73, 0x67, - 0x46, 0x6f, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, - 0x61, 0x77, 0x61, 0x6c, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, - 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, 0x17, 0xf2, - 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x12, 0x2f, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x04, 0x42, 0x13, 0xf2, 0xde, 0x1f, 0x0f, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, - 0x65, 0x6e, 0x63, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, - 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x93, 0x02, 0x0a, 0x11, 0x4d, 0x73, 0x67, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x12, 0x4a, + 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, + 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, - 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, - 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xf2, 0xde, 0x1f, 0x0f, 0x79, - 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x22, 0xd2, 0xb4, - 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, - 0x12, 0x4d, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 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, 0x1a, 0xc8, 0xde, 0x1f, - 0x00, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x6d, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, - 0x6f, 0x6f, 0x66, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6d, 0x65, - 0x74, 0x62, 0x66, 0x74, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x76, 0x31, 0x2e, 0x50, - 0x72, 0x6f, 0x6f, 0x66, 0x4f, 0x70, 0x73, 0x42, 0x24, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, - 0x17, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x22, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0f, 0x63, - 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x2e, - 0x0a, 0x08, 0x61, 0x70, 0x70, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, - 0x42, 0x13, 0xf2, 0xde, 0x1f, 0x0f, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x70, 0x70, 0x5f, - 0x68, 0x61, 0x73, 0x68, 0x22, 0x52, 0x07, 0x61, 0x70, 0x70, 0x48, 0x61, 0x73, 0x68, 0x12, 0x63, - 0x0a, 0x0e, 0x61, 0x70, 0x70, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x6d, 0x65, 0x74, 0x62, 0x66, - 0x74, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6f, - 0x66, 0x42, 0x22, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x15, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x61, 0x70, 0x70, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x22, - 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0c, 0x61, 0x70, 0x70, 0x48, 0x61, 0x73, 0x68, 0x50, 0x72, - 0x6f, 0x6f, 0x66, 0x12, 0x2c, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x0c, 0x42, 0x12, 0xf2, 0xde, 0x1f, 0x0e, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x3a, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x6f, 0x6f, - 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x17, 0xf2, 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, - 0x6c, 0x3a, 0x22, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x22, - 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x42, 0x0a, - 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x1a, 0xf2, 0xde, 0x1f, 0x16, 0x79, 0x61, 0x6d, 0x6c, - 0x3a, 0x22, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, - 0x68, 0x22, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, - 0x68, 0x3a, 0x30, 0x82, 0xe7, 0xb0, 0x2a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, - 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x46, - 0x6f, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, - 0x77, 0x61, 0x6c, 0x22, 0x21, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x93, 0x02, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x09, - 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, - 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, - 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x52, 0x0a, 0x0c, 0x6e, - 0x65, 0x77, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x2f, 0xf2, 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6e, 0x65, 0x77, - 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x3a, - 0x2b, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, - 0xe7, 0xb0, 0x2a, 0x18, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x22, 0x66, 0x0a, 0x19, - 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, - 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x22, 0xa2, 0x02, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x12, 0x4a, 0x0a, + 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, + 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, + 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x52, 0x0a, + 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x2f, 0xf2, 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6e, + 0x65, 0x77, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x22, 0xd2, 0xb4, 0x2d, 0x14, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, + 0x72, 0x3a, 0x2b, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, + 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x18, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x22, 0x66, + 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, + 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, + 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xa2, 0x02, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x12, + 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, + 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x5b, + 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x32, 0xf2, 0xde, 0x1f, 0x16, 0x79, 0x61, 0x6d, + 0x6c, 0x3a, 0x22, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x72, 0x73, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0e, 0x6e, 0x65, 0x77, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x3a, 0x2e, 0x82, 0xe7, 0xb0, + 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x1b, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x22, 0x69, 0x0a, 0x1c, 0x4d, + 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, + 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xa8, 0x02, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, @@ -14928,195 +13249,162 @@ var file_opinit_ophost_v1_tx_proto_rawDesc = []byte{ 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, - 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x5b, 0x0a, 0x0f, - 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x32, 0xf2, 0xde, 0x1f, 0x16, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, - 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0e, 0x6e, 0x65, 0x77, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x3a, 0x2e, 0x82, 0xe7, 0xb0, 0x2a, 0x09, - 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x1b, 0x6f, 0x70, - 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x22, 0x69, 0x0a, 0x1c, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, - 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x22, 0xa8, 0x02, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4a, 0x0a, 0x09, 0x61, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, - 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, - 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, - 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, - 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, - 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x65, 0x0a, 0x0e, 0x6e, 0x65, - 0x77, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, - 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x42, - 0x22, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x15, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6e, - 0x65, 0x77, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0xa8, 0xe7, - 0xb0, 0x2a, 0x01, 0x52, 0x0c, 0x6e, 0x65, 0x77, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, - 0x6f, 0x3a, 0x2c, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x19, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x22, - 0x67, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x89, 0x02, 0x0a, 0x15, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, - 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, - 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x19, 0xf2, 0xde, 0x1f, 0x15, 0x79, - 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x22, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x45, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x3a, 0x2f, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, - 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, + 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x65, 0x0a, 0x0e, + 0x6e, 0x65, 0x77, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, + 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, + 0x6f, 0x42, 0x22, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x15, 0x79, 0x61, 0x6d, 0x6c, 0x3a, + 0x22, 0x6e, 0x65, 0x77, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, + 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0c, 0x6e, 0x65, 0x77, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, + 0x6e, 0x66, 0x6f, 0x3a, 0x2c, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x19, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, + 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, + 0x6f, 0x22, 0x67, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x89, 0x02, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x22, 0x1f, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf0, 0x01, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x4a, 0x0a, 0x09, 0x61, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, - 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, - 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, - 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, - 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, - 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x08, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x13, 0xf2, 0xde, - 0x1f, 0x0f, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x2b, 0x82, 0xe7, 0xb0, - 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x18, - 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x66, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x22, 0xcd, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x12, 0x43, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x18, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x11, 0xf2, 0xde, 0x1f, 0x0d, - 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x52, 0x06, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x29, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, - 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x16, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, - 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xe8, 0x09, 0x0a, 0x03, - 0x4d, 0x73, 0x67, 0x12, 0x59, 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x12, 0x20, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, - 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, + 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x19, 0xf2, 0xde, 0x1f, + 0x15, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x45, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x3a, 0x2f, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, + 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x1f, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf0, 0x01, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x4a, 0x0a, + 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, + 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, + 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, + 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x13, + 0xf2, 0xde, 0x1f, 0x0f, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x22, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x2b, 0x82, + 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, + 0x2a, 0x18, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x66, 0x0a, 0x19, 0x4d, 0x73, + 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, + 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, + 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x22, 0xcd, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, + 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xd2, + 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x12, 0x43, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, + 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x11, 0xf2, 0xde, + 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x52, + 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x29, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x16, 0x6f, 0x70, 0x68, 0x6f, + 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xf3, 0x08, + 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x59, 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, + 0x61, 0x74, 0x63, 0x68, 0x12, 0x20, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, - 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x12, 0x21, - 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, - 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, - 0x69, 0x64, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x0d, - 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x22, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, - 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, - 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x21, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x14, 0x49, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, - 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, - 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x1a, 0x31, + 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x5c, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, + 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, + 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, + 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, + 0x70, 0x75, 0x74, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, + 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, + 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x5c, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, + 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, + 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, + 0x14, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, + 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, + 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x1a, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x12, 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x7d, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x12, 0x2c, 0x2e, 0x6f, + 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x1a, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x1a, 0x34, 0x2e, 0x6f, 0x70, 0x69, - 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, - 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, - 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x73, 0x0a, 0x13, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, - 0x74, 0x68, 0x64, 0x72, 0x77, 0x61, 0x6c, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x6f, - 0x72, 0x63, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, - 0x61, 0x6c, 0x1a, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, - 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x12, 0x23, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x1a, 0x2b, 0x2e, 0x6f, + 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, + 0x6f, 0x73, 0x65, 0x72, 0x12, 0x23, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, + 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x1a, 0x2b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x12, 0x26, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, + 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x72, 0x73, 0x1a, 0x2e, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, + 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x11, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x12, 0x26, + 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x2e, 0x6f, + 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, + 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x1a, 0x2b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, + 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, + 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x1a, 0x2e, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, - 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x6f, 0x70, 0x69, 0x6e, - 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x1a, - 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, - 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, - 0x23, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x1a, 0x2b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, - 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, + 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, - 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, - 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xc2, 0x01, 0xc8, 0xe1, 0x1e, 0x00, 0x0a, 0x14, 0x63, - 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, - 0x2e, 0x76, 0x31, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, - 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, - 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, - 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4f, 0x4f, - 0x58, 0xaa, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x68, 0x6f, 0x73, - 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, - 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x12, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, - 0x3a, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, + 0xb0, 0x2a, 0x01, 0x42, 0xc2, 0x01, 0xc8, 0xe1, 0x1e, 0x00, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, + 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, + 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, + 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, + 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x76, 0x31, 0x3b, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, + 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x56, + 0x31, 0xca, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, + 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, + 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0xea, 0x02, 0x12, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, + 0x68, 0x6f, 0x73, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -15131,7 +13419,7 @@ func file_opinit_ophost_v1_tx_proto_rawDescGZIP() []byte { return file_opinit_ophost_v1_tx_proto_rawDescData } -var file_opinit_ophost_v1_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 26) +var file_opinit_ophost_v1_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_opinit_ophost_v1_tx_proto_goTypes = []interface{}{ (*MsgRecordBatch)(nil), // 0: opinit.ophost.v1.MsgRecordBatch (*MsgRecordBatchResponse)(nil), // 1: opinit.ophost.v1.MsgRecordBatchResponse @@ -15145,65 +13433,56 @@ var file_opinit_ophost_v1_tx_proto_goTypes = []interface{}{ (*MsgInitiateTokenDepositResponse)(nil), // 9: opinit.ophost.v1.MsgInitiateTokenDepositResponse (*MsgFinalizeTokenWithdrawal)(nil), // 10: opinit.ophost.v1.MsgFinalizeTokenWithdrawal (*MsgFinalizeTokenWithdrawalResponse)(nil), // 11: opinit.ophost.v1.MsgFinalizeTokenWithdrawalResponse - (*MsgForceTokenWithdrawal)(nil), // 12: opinit.ophost.v1.MsgForceTokenWithdrawal - (*MsgForceTokenWithdrawalResponse)(nil), // 13: opinit.ophost.v1.MsgForceTokenWithdrawalResponse - (*MsgUpdateProposer)(nil), // 14: opinit.ophost.v1.MsgUpdateProposer - (*MsgUpdateProposerResponse)(nil), // 15: opinit.ophost.v1.MsgUpdateProposerResponse - (*MsgUpdateChallengers)(nil), // 16: opinit.ophost.v1.MsgUpdateChallengers - (*MsgUpdateChallengersResponse)(nil), // 17: opinit.ophost.v1.MsgUpdateChallengersResponse - (*MsgUpdateBatchInfo)(nil), // 18: opinit.ophost.v1.MsgUpdateBatchInfo - (*MsgUpdateBatchInfoResponse)(nil), // 19: opinit.ophost.v1.MsgUpdateBatchInfoResponse - (*MsgUpdateOracleConfig)(nil), // 20: opinit.ophost.v1.MsgUpdateOracleConfig - (*MsgUpdateOracleConfigResponse)(nil), // 21: opinit.ophost.v1.MsgUpdateOracleConfigResponse - (*MsgUpdateMetadata)(nil), // 22: opinit.ophost.v1.MsgUpdateMetadata - (*MsgUpdateMetadataResponse)(nil), // 23: opinit.ophost.v1.MsgUpdateMetadataResponse - (*MsgUpdateParams)(nil), // 24: opinit.ophost.v1.MsgUpdateParams - (*MsgUpdateParamsResponse)(nil), // 25: opinit.ophost.v1.MsgUpdateParamsResponse - (*BridgeConfig)(nil), // 26: opinit.ophost.v1.BridgeConfig - (*v1beta1.Coin)(nil), // 27: cosmos.base.v1beta1.Coin - (*v1.ProofOps)(nil), // 28: cometbft.crypto.v1.ProofOps - (*v1.Proof)(nil), // 29: cometbft.crypto.v1.Proof - (*BatchInfo)(nil), // 30: opinit.ophost.v1.BatchInfo - (*Params)(nil), // 31: opinit.ophost.v1.Params + (*MsgUpdateProposer)(nil), // 12: opinit.ophost.v1.MsgUpdateProposer + (*MsgUpdateProposerResponse)(nil), // 13: opinit.ophost.v1.MsgUpdateProposerResponse + (*MsgUpdateChallengers)(nil), // 14: opinit.ophost.v1.MsgUpdateChallengers + (*MsgUpdateChallengersResponse)(nil), // 15: opinit.ophost.v1.MsgUpdateChallengersResponse + (*MsgUpdateBatchInfo)(nil), // 16: opinit.ophost.v1.MsgUpdateBatchInfo + (*MsgUpdateBatchInfoResponse)(nil), // 17: opinit.ophost.v1.MsgUpdateBatchInfoResponse + (*MsgUpdateOracleConfig)(nil), // 18: opinit.ophost.v1.MsgUpdateOracleConfig + (*MsgUpdateOracleConfigResponse)(nil), // 19: opinit.ophost.v1.MsgUpdateOracleConfigResponse + (*MsgUpdateMetadata)(nil), // 20: opinit.ophost.v1.MsgUpdateMetadata + (*MsgUpdateMetadataResponse)(nil), // 21: opinit.ophost.v1.MsgUpdateMetadataResponse + (*MsgUpdateParams)(nil), // 22: opinit.ophost.v1.MsgUpdateParams + (*MsgUpdateParamsResponse)(nil), // 23: opinit.ophost.v1.MsgUpdateParamsResponse + (*BridgeConfig)(nil), // 24: opinit.ophost.v1.BridgeConfig + (*v1beta1.Coin)(nil), // 25: cosmos.base.v1beta1.Coin + (*BatchInfo)(nil), // 26: opinit.ophost.v1.BatchInfo + (*Params)(nil), // 27: opinit.ophost.v1.Params } var file_opinit_ophost_v1_tx_proto_depIdxs = []int32{ - 26, // 0: opinit.ophost.v1.MsgCreateBridge.config:type_name -> opinit.ophost.v1.BridgeConfig - 27, // 1: opinit.ophost.v1.MsgInitiateTokenDeposit.amount:type_name -> cosmos.base.v1beta1.Coin - 27, // 2: opinit.ophost.v1.MsgFinalizeTokenWithdrawal.amount:type_name -> cosmos.base.v1beta1.Coin - 27, // 3: opinit.ophost.v1.MsgForceTokenWithdrawal.amount:type_name -> cosmos.base.v1beta1.Coin - 28, // 4: opinit.ophost.v1.MsgForceTokenWithdrawal.commitment_proof:type_name -> cometbft.crypto.v1.ProofOps - 29, // 5: opinit.ophost.v1.MsgForceTokenWithdrawal.app_hash_proof:type_name -> cometbft.crypto.v1.Proof - 30, // 6: opinit.ophost.v1.MsgUpdateBatchInfo.new_batch_info:type_name -> opinit.ophost.v1.BatchInfo - 31, // 7: opinit.ophost.v1.MsgUpdateParams.params:type_name -> opinit.ophost.v1.Params - 0, // 8: opinit.ophost.v1.Msg.RecordBatch:input_type -> opinit.ophost.v1.MsgRecordBatch - 2, // 9: opinit.ophost.v1.Msg.CreateBridge:input_type -> opinit.ophost.v1.MsgCreateBridge - 4, // 10: opinit.ophost.v1.Msg.ProposeOutput:input_type -> opinit.ophost.v1.MsgProposeOutput - 6, // 11: opinit.ophost.v1.Msg.DeleteOutput:input_type -> opinit.ophost.v1.MsgDeleteOutput - 8, // 12: opinit.ophost.v1.Msg.InitiateTokenDeposit:input_type -> opinit.ophost.v1.MsgInitiateTokenDeposit - 10, // 13: opinit.ophost.v1.Msg.FinalizeTokenWithdrawal:input_type -> opinit.ophost.v1.MsgFinalizeTokenWithdrawal - 12, // 14: opinit.ophost.v1.Msg.ForceTokenWithdrwal:input_type -> opinit.ophost.v1.MsgForceTokenWithdrawal - 14, // 15: opinit.ophost.v1.Msg.UpdateProposer:input_type -> opinit.ophost.v1.MsgUpdateProposer - 16, // 16: opinit.ophost.v1.Msg.UpdateChallengers:input_type -> opinit.ophost.v1.MsgUpdateChallengers - 18, // 17: opinit.ophost.v1.Msg.UpdateBatchInfo:input_type -> opinit.ophost.v1.MsgUpdateBatchInfo - 22, // 18: opinit.ophost.v1.Msg.UpdateMetadata:input_type -> opinit.ophost.v1.MsgUpdateMetadata - 24, // 19: opinit.ophost.v1.Msg.UpdateParams:input_type -> opinit.ophost.v1.MsgUpdateParams - 1, // 20: opinit.ophost.v1.Msg.RecordBatch:output_type -> opinit.ophost.v1.MsgRecordBatchResponse - 3, // 21: opinit.ophost.v1.Msg.CreateBridge:output_type -> opinit.ophost.v1.MsgCreateBridgeResponse - 5, // 22: opinit.ophost.v1.Msg.ProposeOutput:output_type -> opinit.ophost.v1.MsgProposeOutputResponse - 7, // 23: opinit.ophost.v1.Msg.DeleteOutput:output_type -> opinit.ophost.v1.MsgDeleteOutputResponse - 9, // 24: opinit.ophost.v1.Msg.InitiateTokenDeposit:output_type -> opinit.ophost.v1.MsgInitiateTokenDepositResponse - 11, // 25: opinit.ophost.v1.Msg.FinalizeTokenWithdrawal:output_type -> opinit.ophost.v1.MsgFinalizeTokenWithdrawalResponse - 13, // 26: opinit.ophost.v1.Msg.ForceTokenWithdrwal:output_type -> opinit.ophost.v1.MsgForceTokenWithdrawalResponse - 15, // 27: opinit.ophost.v1.Msg.UpdateProposer:output_type -> opinit.ophost.v1.MsgUpdateProposerResponse - 17, // 28: opinit.ophost.v1.Msg.UpdateChallengers:output_type -> opinit.ophost.v1.MsgUpdateChallengersResponse - 19, // 29: opinit.ophost.v1.Msg.UpdateBatchInfo:output_type -> opinit.ophost.v1.MsgUpdateBatchInfoResponse - 23, // 30: opinit.ophost.v1.Msg.UpdateMetadata:output_type -> opinit.ophost.v1.MsgUpdateMetadataResponse - 25, // 31: opinit.ophost.v1.Msg.UpdateParams:output_type -> opinit.ophost.v1.MsgUpdateParamsResponse - 20, // [20:32] is the sub-list for method output_type - 8, // [8:20] is the sub-list for method input_type - 8, // [8:8] is the sub-list for extension type_name - 8, // [8:8] is the sub-list for extension extendee - 0, // [0:8] is the sub-list for field type_name + 24, // 0: opinit.ophost.v1.MsgCreateBridge.config:type_name -> opinit.ophost.v1.BridgeConfig + 25, // 1: opinit.ophost.v1.MsgInitiateTokenDeposit.amount:type_name -> cosmos.base.v1beta1.Coin + 25, // 2: opinit.ophost.v1.MsgFinalizeTokenWithdrawal.amount:type_name -> cosmos.base.v1beta1.Coin + 26, // 3: opinit.ophost.v1.MsgUpdateBatchInfo.new_batch_info:type_name -> opinit.ophost.v1.BatchInfo + 27, // 4: opinit.ophost.v1.MsgUpdateParams.params:type_name -> opinit.ophost.v1.Params + 0, // 5: opinit.ophost.v1.Msg.RecordBatch:input_type -> opinit.ophost.v1.MsgRecordBatch + 2, // 6: opinit.ophost.v1.Msg.CreateBridge:input_type -> opinit.ophost.v1.MsgCreateBridge + 4, // 7: opinit.ophost.v1.Msg.ProposeOutput:input_type -> opinit.ophost.v1.MsgProposeOutput + 6, // 8: opinit.ophost.v1.Msg.DeleteOutput:input_type -> opinit.ophost.v1.MsgDeleteOutput + 8, // 9: opinit.ophost.v1.Msg.InitiateTokenDeposit:input_type -> opinit.ophost.v1.MsgInitiateTokenDeposit + 10, // 10: opinit.ophost.v1.Msg.FinalizeTokenWithdrawal:input_type -> opinit.ophost.v1.MsgFinalizeTokenWithdrawal + 12, // 11: opinit.ophost.v1.Msg.UpdateProposer:input_type -> opinit.ophost.v1.MsgUpdateProposer + 14, // 12: opinit.ophost.v1.Msg.UpdateChallengers:input_type -> opinit.ophost.v1.MsgUpdateChallengers + 16, // 13: opinit.ophost.v1.Msg.UpdateBatchInfo:input_type -> opinit.ophost.v1.MsgUpdateBatchInfo + 20, // 14: opinit.ophost.v1.Msg.UpdateMetadata:input_type -> opinit.ophost.v1.MsgUpdateMetadata + 22, // 15: opinit.ophost.v1.Msg.UpdateParams:input_type -> opinit.ophost.v1.MsgUpdateParams + 1, // 16: opinit.ophost.v1.Msg.RecordBatch:output_type -> opinit.ophost.v1.MsgRecordBatchResponse + 3, // 17: opinit.ophost.v1.Msg.CreateBridge:output_type -> opinit.ophost.v1.MsgCreateBridgeResponse + 5, // 18: opinit.ophost.v1.Msg.ProposeOutput:output_type -> opinit.ophost.v1.MsgProposeOutputResponse + 7, // 19: opinit.ophost.v1.Msg.DeleteOutput:output_type -> opinit.ophost.v1.MsgDeleteOutputResponse + 9, // 20: opinit.ophost.v1.Msg.InitiateTokenDeposit:output_type -> opinit.ophost.v1.MsgInitiateTokenDepositResponse + 11, // 21: opinit.ophost.v1.Msg.FinalizeTokenWithdrawal:output_type -> opinit.ophost.v1.MsgFinalizeTokenWithdrawalResponse + 13, // 22: opinit.ophost.v1.Msg.UpdateProposer:output_type -> opinit.ophost.v1.MsgUpdateProposerResponse + 15, // 23: opinit.ophost.v1.Msg.UpdateChallengers:output_type -> opinit.ophost.v1.MsgUpdateChallengersResponse + 17, // 24: opinit.ophost.v1.Msg.UpdateBatchInfo:output_type -> opinit.ophost.v1.MsgUpdateBatchInfoResponse + 21, // 25: opinit.ophost.v1.Msg.UpdateMetadata:output_type -> opinit.ophost.v1.MsgUpdateMetadataResponse + 23, // 26: opinit.ophost.v1.Msg.UpdateParams:output_type -> opinit.ophost.v1.MsgUpdateParamsResponse + 16, // [16:27] is the sub-list for method output_type + 5, // [5:16] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name } func init() { file_opinit_ophost_v1_tx_proto_init() } @@ -15358,30 +13637,6 @@ func file_opinit_ophost_v1_tx_proto_init() { } } file_opinit_ophost_v1_tx_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgForceTokenWithdrawal); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_opinit_ophost_v1_tx_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgForceTokenWithdrawalResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_opinit_ophost_v1_tx_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateProposer); i { case 0: return &v.state @@ -15393,7 +13648,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateProposerResponse); i { case 0: return &v.state @@ -15405,7 +13660,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateChallengers); i { case 0: return &v.state @@ -15417,7 +13672,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateChallengersResponse); i { case 0: return &v.state @@ -15429,7 +13684,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateBatchInfo); i { case 0: return &v.state @@ -15441,7 +13696,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateBatchInfoResponse); i { case 0: return &v.state @@ -15453,7 +13708,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateOracleConfig); i { case 0: return &v.state @@ -15465,7 +13720,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateOracleConfigResponse); i { case 0: return &v.state @@ -15477,7 +13732,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateMetadata); i { case 0: return &v.state @@ -15489,7 +13744,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateMetadataResponse); i { case 0: return &v.state @@ -15501,7 +13756,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateParams); i { case 0: return &v.state @@ -15513,7 +13768,7 @@ func file_opinit_ophost_v1_tx_proto_init() { return nil } } - file_opinit_ophost_v1_tx_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_opinit_ophost_v1_tx_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateParamsResponse); i { case 0: return &v.state @@ -15532,7 +13787,7 @@ func file_opinit_ophost_v1_tx_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_opinit_ophost_v1_tx_proto_rawDesc, NumEnums: 0, - NumMessages: 26, + NumMessages: 24, NumExtensions: 0, NumServices: 1, }, diff --git a/api/opinit/ophost/v1/tx_grpc.pb.go b/api/opinit/ophost/v1/tx_grpc.pb.go index 59ef6486..292022f0 100644 --- a/api/opinit/ophost/v1/tx_grpc.pb.go +++ b/api/opinit/ophost/v1/tx_grpc.pb.go @@ -25,7 +25,6 @@ const ( Msg_DeleteOutput_FullMethodName = "/opinit.ophost.v1.Msg/DeleteOutput" Msg_InitiateTokenDeposit_FullMethodName = "/opinit.ophost.v1.Msg/InitiateTokenDeposit" Msg_FinalizeTokenWithdrawal_FullMethodName = "/opinit.ophost.v1.Msg/FinalizeTokenWithdrawal" - Msg_ForceTokenWithdrwal_FullMethodName = "/opinit.ophost.v1.Msg/ForceTokenWithdrwal" Msg_UpdateProposer_FullMethodName = "/opinit.ophost.v1.Msg/UpdateProposer" Msg_UpdateChallengers_FullMethodName = "/opinit.ophost.v1.Msg/UpdateChallengers" Msg_UpdateBatchInfo_FullMethodName = "/opinit.ophost.v1.Msg/UpdateBatchInfo" @@ -49,8 +48,6 @@ type MsgClient interface { InitiateTokenDeposit(ctx context.Context, in *MsgInitiateTokenDeposit, opts ...grpc.CallOption) (*MsgInitiateTokenDepositResponse, error) // FinalizeTokenWithdrawal defines a user facing l2 => l1 token transfer interface. FinalizeTokenWithdrawal(ctx context.Context, in *MsgFinalizeTokenWithdrawal, opts ...grpc.CallOption) (*MsgFinalizeTokenWithdrawalResponse, error) - // ForceTokenWithdrwal defines a force token withdrawal interface. - ForceTokenWithdrwal(ctx context.Context, in *MsgForceTokenWithdrawal, opts ...grpc.CallOption) (*MsgForceTokenWithdrawalResponse, error) // UpdateProposer defines a rpc handler method for MsgUpdateProposer. UpdateProposer(ctx context.Context, in *MsgUpdateProposer, opts ...grpc.CallOption) (*MsgUpdateProposerResponse, error) // UpdateChallengers defines a rpc handler method for MsgUpdateChallengers. @@ -126,15 +123,6 @@ func (c *msgClient) FinalizeTokenWithdrawal(ctx context.Context, in *MsgFinalize return out, nil } -func (c *msgClient) ForceTokenWithdrwal(ctx context.Context, in *MsgForceTokenWithdrawal, opts ...grpc.CallOption) (*MsgForceTokenWithdrawalResponse, error) { - out := new(MsgForceTokenWithdrawalResponse) - err := c.cc.Invoke(ctx, Msg_ForceTokenWithdrwal_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *msgClient) UpdateProposer(ctx context.Context, in *MsgUpdateProposer, opts ...grpc.CallOption) (*MsgUpdateProposerResponse, error) { out := new(MsgUpdateProposerResponse) err := c.cc.Invoke(ctx, Msg_UpdateProposer_FullMethodName, in, out, opts...) @@ -196,8 +184,6 @@ type MsgServer interface { InitiateTokenDeposit(context.Context, *MsgInitiateTokenDeposit) (*MsgInitiateTokenDepositResponse, error) // FinalizeTokenWithdrawal defines a user facing l2 => l1 token transfer interface. FinalizeTokenWithdrawal(context.Context, *MsgFinalizeTokenWithdrawal) (*MsgFinalizeTokenWithdrawalResponse, error) - // ForceTokenWithdrwal defines a force token withdrawal interface. - ForceTokenWithdrwal(context.Context, *MsgForceTokenWithdrawal) (*MsgForceTokenWithdrawalResponse, error) // UpdateProposer defines a rpc handler method for MsgUpdateProposer. UpdateProposer(context.Context, *MsgUpdateProposer) (*MsgUpdateProposerResponse, error) // UpdateChallengers defines a rpc handler method for MsgUpdateChallengers. @@ -234,9 +220,6 @@ func (UnimplementedMsgServer) InitiateTokenDeposit(context.Context, *MsgInitiate func (UnimplementedMsgServer) FinalizeTokenWithdrawal(context.Context, *MsgFinalizeTokenWithdrawal) (*MsgFinalizeTokenWithdrawalResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method FinalizeTokenWithdrawal not implemented") } -func (UnimplementedMsgServer) ForceTokenWithdrwal(context.Context, *MsgForceTokenWithdrawal) (*MsgForceTokenWithdrawalResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ForceTokenWithdrwal not implemented") -} func (UnimplementedMsgServer) UpdateProposer(context.Context, *MsgUpdateProposer) (*MsgUpdateProposerResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method UpdateProposer not implemented") } @@ -373,24 +356,6 @@ func _Msg_FinalizeTokenWithdrawal_Handler(srv interface{}, ctx context.Context, return interceptor(ctx, in, info, handler) } -func _Msg_ForceTokenWithdrwal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgForceTokenWithdrawal) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).ForceTokenWithdrwal(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: Msg_ForceTokenWithdrwal_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).ForceTokenWithdrwal(ctx, req.(*MsgForceTokenWithdrawal)) - } - return interceptor(ctx, in, info, handler) -} - func _Msg_UpdateProposer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(MsgUpdateProposer) if err := dec(in); err != nil { @@ -512,10 +477,6 @@ var Msg_ServiceDesc = grpc.ServiceDesc{ MethodName: "FinalizeTokenWithdrawal", Handler: _Msg_FinalizeTokenWithdrawal_Handler, }, - { - MethodName: "ForceTokenWithdrwal", - Handler: _Msg_ForceTokenWithdrwal_Handler, - }, { MethodName: "UpdateProposer", Handler: _Msg_UpdateProposer_Handler, diff --git a/proto/buf.gen.pulsar.yaml b/proto/buf.gen.pulsar.yaml index 993c412b..e671b94a 100644 --- a/proto/buf.gen.pulsar.yaml +++ b/proto/buf.gen.pulsar.yaml @@ -10,7 +10,6 @@ managed: - buf.build/cosmos/ibc override: buf.build/cosmos/cosmos-sdk: cosmossdk.io/api - buf.build/cometbft/cometbft: buf.build/gen/go/cometbft/cometbft/protocolbuffers/go plugins: - name: go-pulsar out: ../api diff --git a/proto/opinit/opchild/v1/genesis.proto b/proto/opinit/opchild/v1/genesis.proto index 9a8327a3..432d126c 100644 --- a/proto/opinit/opchild/v1/genesis.proto +++ b/proto/opinit/opchild/v1/genesis.proto @@ -20,13 +20,6 @@ message GenesisState { // delegations defines the validator set at genesis. repeated Validator validators = 3 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - // the pending deposits that are not failed to be deposited. - repeated PendingDeposits pending_deposits = 4 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - - // the withdrawal commitments for force withdrawal. - repeated WithdrawalCommitment withdrawal_commitments = 5 - [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - uint64 next_l2_sequence = 6; uint64 next_l1_sequence = 7; BridgeInfo bridge_info = 8; diff --git a/proto/opinit/opchild/v1/query.proto b/proto/opinit/opchild/v1/query.proto index e5d3c63f..80132854 100644 --- a/proto/opinit/opchild/v1/query.proto +++ b/proto/opinit/opchild/v1/query.proto @@ -2,7 +2,6 @@ syntax = "proto3"; package opinit.opchild.v1; import "amino/amino.proto"; -import "cometbft/crypto/v1/proof.proto"; import "cosmos/base/query/v1beta1/pagination.proto"; import "cosmos/base/v1beta1/coin.proto"; import "cosmos/query/v1/query.proto"; @@ -58,11 +57,6 @@ service Query { option (cosmos.query.v1.module_query_safe) = true; option (google.api.http).get = "/opinit/opchild/v1/base_denom/{denom}"; } - - rpc ForceWithdrawalProofs(QueryForceWithdrawalProofsRequest) returns (QueryForceWithdrawalProofsResponse) { - option (cosmos.query.v1.module_query_safe) = true; - option (google.api.http).get = "/opinit/opchild/v1/withdrawals/{sequence}/proofs"; - } } // QueryValidatorsRequest is request type for Query/Validators RPC method. @@ -137,21 +131,3 @@ message QueryBaseDenomRequest { message QueryBaseDenomResponse { string base_denom = 1; } - -// QueryForceWithdrawalProofsRequest is request type for the Query/ForceWithdrawalProofs RPC method. -message QueryForceWithdrawalProofsRequest { - // sequence is the sequence number of the withdrawal. - uint64 sequence = 1; -} - -// QueryForceWithdrawalProofsResponse is response type for the Query/ForceWithdrawalProofs RPC method. -message QueryForceWithdrawalProofsResponse { - // withdrawal commitments and proofs - cometbft.crypto.v1.ProofOps commitment_proof = 3 - [(gogoproto.moretags) = "yaml:\"commitment_proof\"", (gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - - // app hash and proof - bytes app_hash = 4 [(gogoproto.moretags) = "yaml:\"app_hash\""]; - cometbft.crypto.v1.Proof app_hash_proof = 5 - [(gogoproto.moretags) = "yaml:\"app_hash_proof\"", (gogoproto.nullable) = false, (amino.dont_omitempty) = true]; -} diff --git a/proto/opinit/opchild/v1/tx.proto b/proto/opinit/opchild/v1/tx.proto index 3a61304d..17c57617 100644 --- a/proto/opinit/opchild/v1/tx.proto +++ b/proto/opinit/opchild/v1/tx.proto @@ -103,9 +103,9 @@ message MsgFinalizeTokenDeposit { string sender = 1 [(gogoproto.moretags) = "yaml:\"sender\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; // from is l1 sender address - string from = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string from = 2; - // to is l2 recipient address + // to is l2 recipient address or "hook" string to = 3 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // amount is the coin amount to deposit. @@ -139,7 +139,7 @@ message MsgInitiateTokenWithdrawal { string sender = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // to is l1 recipient address - string to = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string to = 2; // amount is the coin amount to withdraw. cosmos.base.v1beta1.Coin amount = 4 diff --git a/proto/opinit/opchild/v1/types.proto b/proto/opinit/opchild/v1/types.proto index f5501337..45a4a57e 100644 --- a/proto/opinit/opchild/v1/types.proto +++ b/proto/opinit/opchild/v1/types.proto @@ -6,7 +6,6 @@ import "cosmos/base/v1beta1/coin.proto"; import "cosmos_proto/cosmos.proto"; import "gogoproto/gogo.proto"; import "google/protobuf/any.proto"; -import "google/protobuf/timestamp.proto"; import "opinit/ophost/v1/types.proto"; import "tendermint/abci/types.proto"; @@ -102,19 +101,6 @@ message BridgeInfo { opinit.ophost.v1.BridgeConfig bridge_config = 5 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; } -// PendingDeposits defines the set of pending deposits. -message PendingDeposits { - // recipient is the address of the recipient. - string recipient = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; - - // coins is a list of coins to be deposited. - repeated cosmos.base.v1beta1.Coin coins = 2 [ - (gogoproto.nullable) = false, - (amino.dont_omitempty) = true, - (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins" - ]; -} - // CoinsWrapper defines the set of coins. message CoinsWrapper { repeated cosmos.base.v1beta1.Coin coins = 1 [ @@ -135,9 +121,3 @@ enum ResponseResultType { // The message was executed successfully RESPONSE_RESULT_TYPE_SUCCESS = 2 [(gogoproto.enumvalue_customname) = "SUCCESS"]; } - -message WithdrawalCommitment { - bytes commitment = 1; - google.protobuf.Timestamp submit_time = 5 - [(gogoproto.nullable) = false, (amino.dont_omitempty) = true, (gogoproto.stdtime) = true]; -} diff --git a/proto/opinit/ophost/v1/tx.proto b/proto/opinit/ophost/v1/tx.proto index f404f578..c2f10eae 100644 --- a/proto/opinit/ophost/v1/tx.proto +++ b/proto/opinit/ophost/v1/tx.proto @@ -2,7 +2,6 @@ syntax = "proto3"; package opinit.ophost.v1; import "amino/amino.proto"; -import "cometbft/crypto/v1/proof.proto"; import "cosmos/base/v1beta1/coin.proto"; import "cosmos/msg/v1/msg.proto"; import "cosmos_proto/cosmos.proto"; @@ -49,9 +48,6 @@ service Msg { // FinalizeTokenWithdrawal defines a user facing l2 => l1 token transfer interface. rpc FinalizeTokenWithdrawal(MsgFinalizeTokenWithdrawal) returns (MsgFinalizeTokenWithdrawalResponse); - // ForceTokenWithdrwal defines a force token withdrawal interface. - rpc ForceTokenWithdrwal(MsgForceTokenWithdrawal) returns (MsgForceTokenWithdrawalResponse); - //////////////////////////// // Authority Messages @@ -156,7 +152,7 @@ message MsgInitiateTokenDeposit { string sender = 1 [(gogoproto.moretags) = "yaml:\"sender\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; uint64 bridge_id = 2 [(gogoproto.moretags) = "yaml:\"bridge_id\""]; - string to = 3 [(gogoproto.moretags) = "yaml:\"to\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; + string to = 3 [(gogoproto.moretags) = "yaml:\"to\""]; cosmos.base.v1beta1.Coin amount = 4 [(gogoproto.moretags) = "yaml:\"amount\"", (gogoproto.nullable) = false, (amino.dont_omitempty) = true]; bytes data = 5 [(gogoproto.moretags) = "yaml:\"data\"", (gogoproto.nullable) = true, (amino.dont_omitempty) = false]; @@ -180,7 +176,7 @@ message MsgFinalizeTokenWithdrawal { // withdraw tx data - string sender = 5 [(gogoproto.moretags) = "yaml:\"sender\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; + string sender = 5 [(gogoproto.moretags) = "yaml:\"sender\""]; string receiver = 1 [(gogoproto.moretags) = "yaml:\"receiver\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; uint64 sequence = 6 [(gogoproto.moretags) = "yaml:\"sequence\""]; cosmos.base.v1beta1.Coin amount = 7 @@ -197,38 +193,6 @@ message MsgFinalizeTokenWithdrawal { // MsgFinalizeTokenWithdrawalResponse returns a message handle result. message MsgFinalizeTokenWithdrawalResponse {} -// MsgForceTokenWithdrawal is a message to force a token withdrawal from L2 to L1. -message MsgForceTokenWithdrawal { - option (cosmos.msg.v1.signer) = "receiver"; - option (amino.name) = "ophost/MsgForceTokenWithdrawal"; - - // anyone can force a token withdrawal from L2 to L1 even this is not the receiver. - uint64 bridge_id = 2 [(gogoproto.moretags) = "yaml:\"bridge_id\""]; - uint64 output_index = 3 [(gogoproto.moretags) = "yaml:\"output_index\""]; - - // withdrawal commitments and proofs - uint64 sequence = 4 [(gogoproto.moretags) = "yaml:\"sequence\""]; - string sender = 5 [(gogoproto.moretags) = "yaml:\"sender\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; - string receiver = 1 [(gogoproto.moretags) = "yaml:\"receiver\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; - cosmos.base.v1beta1.Coin amount = 6 - [(gogoproto.moretags) = "yaml:\"amount\"", (gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - cometbft.crypto.v1.ProofOps commitment_proof = 7 - [(gogoproto.moretags) = "yaml:\"commitment_proof\"", (gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - - // app hash and proof - bytes app_hash = 8 [(gogoproto.moretags) = "yaml:\"app_hash\""]; - cometbft.crypto.v1.Proof app_hash_proof = 9 - [(gogoproto.moretags) = "yaml:\"app_hash_proof\"", (gogoproto.nullable) = false, (amino.dont_omitempty) = true]; - - // output root proofs - bytes version = 10 [(gogoproto.moretags) = "yaml:\"version\""]; - bytes storage_root = 11 [(gogoproto.moretags) = "yaml:\"storage_root\""]; - bytes last_block_hash = 12 [(gogoproto.moretags) = "yaml:\"last_block_hash\""]; -} - -// MsgForceTokenWithdrawalResponse returns a message handle result. -message MsgForceTokenWithdrawalResponse {} - /////////////////////////// // Authority Messages diff --git a/x/opchild/abci.go b/x/opchild/abci.go index f03d3e89..addd731d 100644 --- a/x/opchild/abci.go +++ b/x/opchild/abci.go @@ -18,11 +18,6 @@ import ( // and prune the oldest entry based on the HistoricalEntries parameter func BeginBlocker(ctx context.Context, k *keeper.Keeper) error { defer telemetry.ModuleMeasureSince(types.ModuleName, time.Now(), telemetry.MetricKeyBeginBlocker) - err := k.TrackWithdrawalCommitments(ctx) - if err != nil { - return err - } - return k.TrackHistoricalInfo(ctx) } diff --git a/x/opchild/ante/ante_test.go b/x/opchild/ante/ante_test.go index 1724e0f3..8c63cbcf 100644 --- a/x/opchild/ante/ante_test.go +++ b/x/opchild/ante/ante_test.go @@ -154,10 +154,10 @@ func TestRedundantTx(t *testing.T) { tx := testTx{ msgs: []sdk.Msg{ types.NewMsgFinalizeTokenDeposit( - addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 1, 1, "l1_test0", []byte(""), + addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 1, 1, "l1_test0", nil, ), types.NewMsgFinalizeTokenDeposit( - addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 2, 1, "l1_test0", []byte(""), + addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 2, 1, "l1_test0", nil, ), }, } @@ -172,10 +172,10 @@ func TestRedundantTx(t *testing.T) { tx = testTx{ msgs: []sdk.Msg{ types.NewMsgFinalizeTokenDeposit( - addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 2, 1, "l1_test0", []byte(""), + addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 2, 1, "l1_test0", nil, ), types.NewMsgFinalizeTokenDeposit( - addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 3, 1, "l1_test0", []byte(""), + addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 3, 1, "l1_test0", nil, ), }, } @@ -186,7 +186,7 @@ func TestRedundantTx(t *testing.T) { tx = testTx{ msgs: []sdk.Msg{ types.NewMsgFinalizeTokenDeposit( - addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 4, 1, "l1_test0", []byte(""), + addrsStr[0], addrsStr[0], addrsStr[1], sdk.NewCoin(testDenoms[0], math.NewInt(100)), 4, 1, "l1_test0", nil, ), }, } diff --git a/x/opchild/ante/common_test.go b/x/opchild/ante/common_test.go index 1f67fd69..b8032d72 100644 --- a/x/opchild/ante/common_test.go +++ b/x/opchild/ante/common_test.go @@ -31,6 +31,7 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" "github.com/cosmos/cosmos-sdk/x/auth" + authante "github.com/cosmos/cosmos-sdk/x/auth/ante" authcodec "github.com/cosmos/cosmos-sdk/x/auth/codec" authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper" "github.com/cosmos/cosmos-sdk/x/auth/tx" @@ -241,6 +242,8 @@ func _createTestInput( encodingConfig := MakeEncodingConfig(t) appCodec := encodingConfig.Marshaler + txDecoder := encodingConfig.TxConfig.TxDecoder() + signModeHandler := encodingConfig.TxConfig.SignModeHandler() maccPerms := map[string][]string{ // module account permissions authtypes.FeeCollectorName: nil, @@ -292,10 +295,16 @@ func _createTestInput( runtime.NewKVStoreService(keys[opchildtypes.StoreKey]), accountKeeper, bankKeeper, - bridgeHook.Hook, &oracleKeeper, + sdk.ChainAnteDecorators( + authante.NewSetPubKeyDecorator(accountKeeper), + authante.NewValidateSigCountDecorator(accountKeeper), + authante.NewSigGasConsumeDecorator(accountKeeper, authante.DefaultSigVerificationGasConsumer), + authante.NewSigVerificationDecorator(accountKeeper, signModeHandler), + authante.NewIncrementSequenceDecorator(accountKeeper), + ), + txDecoder, msgRouter, - nil, authtypes.NewModuleAddress(opchildtypes.ModuleName).String(), authcodec.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix()), authcodec.NewBech32Codec(sdk.GetConfig().GetBech32ValidatorAddrPrefix()), diff --git a/x/opchild/client/cli/tx_test.go b/x/opchild/client/cli/tx_test.go index d98b1879..0fbdda51 100644 --- a/x/opchild/client/cli/tx_test.go +++ b/x/opchild/client/cli/tx_test.go @@ -116,7 +116,7 @@ func (s *CLITestSuite) TestNewWithdrawCmd() { "invalid transaction (invalid amount)", []string{ s.addrs[0].String(), - "0umin", + "-1umin", fmt.Sprintf("--%s=%s", flags.FlagFrom, s.addrs[0]), fmt.Sprintf("--%s=true", flags.FlagSkipConfirmation), fmt.Sprintf("--%s=%s", flags.FlagBroadcastMode, flags.BroadcastSync), @@ -221,7 +221,7 @@ func (s *CLITestSuite) TestNewDepositCmd() { "1", s.addrs[0].String(), s.addrs[1].String(), - "0umin", + "-1umin", "test_token", fmt.Sprintf("--%s=%s", flags.FlagFrom, s.addrs[0]), fmt.Sprintf("--%s=true", flags.FlagSkipConfirmation), diff --git a/x/opchild/keeper/commitments.go b/x/opchild/keeper/commitments.go deleted file mode 100644 index 73381fc7..00000000 --- a/x/opchild/keeper/commitments.go +++ /dev/null @@ -1,77 +0,0 @@ -package keeper - -import ( - "context" - "errors" - "time" - - "cosmossdk.io/collections" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/initia-labs/OPinit/x/opchild/types" -) - -func (k Keeper) TrackWithdrawalCommitments(ctx context.Context) error { - info, err := k.BridgeInfo.Get(ctx) - if err != nil && errors.Is(err, collections.ErrNotFound) { - return nil - } else if err != nil { - return err - } - - sdkCtx := sdk.UnwrapSDKContext(ctx) - curTime := sdkCtx.BlockTime().UTC().Unix() - retensionPeriod := int64(info.BridgeConfig.FinalizationPeriod.Seconds() * 2) - - err = k.CommitmentTimes.Walk(ctx, nil, func(sequence uint64, submitTime time.Time) (stop bool, err error) { - // stop the iteration if the current time is less than the submit time + retension period - if curTime <= submitTime.UTC().Unix()+retensionPeriod { - return true, nil - } - - return false, k.RemoveWithdrawalCommitment(ctx, sequence) - }) - if err != nil { - return err - } - - return nil -} - -func (k Keeper) SetWithdrawalCommitment(ctx context.Context, sequence uint64, wc types.WithdrawalCommitment) error { - if err := k.CommitmentTimes.Set(ctx, sequence, wc.SubmitTime); err != nil { - return err - } - if err := k.Commitments.Set(ctx, sequence, wc.Commitment); err != nil { - return err - } - - return nil -} - -func (k Keeper) GetWithdrawalCommitment(ctx context.Context, sequence uint64) (types.WithdrawalCommitment, error) { - commitment, err := k.Commitments.Get(ctx, sequence) - if err != nil { - return types.WithdrawalCommitment{}, err - } - - submitTime, err := k.CommitmentTimes.Get(ctx, sequence) - if err != nil { - return types.WithdrawalCommitment{}, err - } - - return types.WithdrawalCommitment{ - Commitment: commitment, - SubmitTime: submitTime, - }, nil -} - -func (k Keeper) RemoveWithdrawalCommitment(ctx context.Context, sequence uint64) error { - if err := k.CommitmentTimes.Remove(ctx, sequence); err != nil { - return err - } - if err := k.Commitments.Remove(ctx, sequence); err != nil { - return err - } - - return nil -} diff --git a/x/opchild/keeper/commitments_test.go b/x/opchild/keeper/commitments_test.go deleted file mode 100644 index 7b124142..00000000 --- a/x/opchild/keeper/commitments_test.go +++ /dev/null @@ -1,85 +0,0 @@ -package keeper_test - -import ( - "testing" - "time" - - "cosmossdk.io/collections" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/stretchr/testify/require" - - "github.com/initia-labs/OPinit/x/opchild/types" - ophosttypes "github.com/initia-labs/OPinit/x/ophost/types" -) - -func Test_TrackWithdrawalCommitments(t *testing.T) { - now := time.Now() - ctx, input := createDefaultTestInput(t) - - err := input.OPChildKeeper.BridgeInfo.Set(ctx, types.BridgeInfo{ - BridgeConfig: ophosttypes.BridgeConfig{ - FinalizationPeriod: time.Second * 5, - }, - }) - require.NoError(t, err) - - // H: 1, T: 0 - ctx = sdk.UnwrapSDKContext(ctx).WithBlockHeight(1).WithBlockTime(now) - err = input.OPChildKeeper.TrackWithdrawalCommitments(ctx) - require.NoError(t, err) - - err = input.OPChildKeeper.SetWithdrawalCommitment(ctx, 1, types.WithdrawalCommitment{ - Commitment: types.CommitWithdrawal(1, "recipient", sdk.NewInt64Coin("uinit", 100)), - SubmitTime: now, - }) - require.NoError(t, err) - - err = input.OPChildKeeper.SetWithdrawalCommitment(ctx, 2, types.WithdrawalCommitment{ - Commitment: types.CommitWithdrawal(1, "recipient", sdk.NewInt64Coin("uinit", 100)), - SubmitTime: now, - }) - require.NoError(t, err) - - // H: 2, T: 5 - ctx = sdk.UnwrapSDKContext(ctx).WithBlockHeight(2).WithBlockTime(now.Add(time.Second * 5)) - err = input.OPChildKeeper.TrackWithdrawalCommitments(ctx) - require.NoError(t, err) - - // record historical withdrawal - err = input.OPChildKeeper.SetWithdrawalCommitment(ctx, 3, types.WithdrawalCommitment{ - Commitment: types.CommitWithdrawal(1, "recipient", sdk.NewInt64Coin("uinit", 100)), - SubmitTime: now.Add(time.Second * 5), - }) - require.NoError(t, err) - - // should not be removed - _, err = input.OPChildKeeper.GetWithdrawalCommitment(ctx, 1) - require.NoError(t, err) - _, err = input.OPChildKeeper.GetWithdrawalCommitment(ctx, 2) - require.NoError(t, err) - _, err = input.OPChildKeeper.GetWithdrawalCommitment(ctx, 3) - require.NoError(t, err) - - // H: 3, T: 15 - ctx = sdk.UnwrapSDKContext(ctx).WithBlockHeight(3).WithBlockTime(now.Add(time.Second * 15)) - err = input.OPChildKeeper.TrackWithdrawalCommitments(ctx) - require.NoError(t, err) - - // should be removed entries of height 1 - _, err = input.OPChildKeeper.GetWithdrawalCommitment(ctx, 1) - require.ErrorIs(t, err, collections.ErrNotFound) - _, err = input.OPChildKeeper.GetWithdrawalCommitment(ctx, 2) - require.ErrorIs(t, err, collections.ErrNotFound) - // should not be removed - _, err = input.OPChildKeeper.GetWithdrawalCommitment(ctx, 3) - require.NoError(t, err) - - // H: 4, T: 25 - ctx = sdk.UnwrapSDKContext(ctx).WithBlockHeight(4).WithBlockTime(now.Add(time.Second * 25)) - err = input.OPChildKeeper.TrackWithdrawalCommitments(ctx) - require.NoError(t, err) - - // should be removed entries of height 2 - _, err = input.OPChildKeeper.GetWithdrawalCommitment(ctx, 3) - require.ErrorIs(t, err, collections.ErrNotFound) -} diff --git a/x/opchild/keeper/common_test.go b/x/opchild/keeper/common_test.go index 4d4f4aae..017984f6 100644 --- a/x/opchild/keeper/common_test.go +++ b/x/opchild/keeper/common_test.go @@ -8,9 +8,6 @@ import ( "github.com/stretchr/testify/require" - "github.com/cometbft/cometbft/crypto" - "github.com/cometbft/cometbft/crypto/ed25519" - "github.com/cometbft/cometbft/crypto/secp256k1" tmproto "github.com/cometbft/cometbft/proto/tendermint/types" "cosmossdk.io/log" @@ -18,22 +15,28 @@ import ( "cosmossdk.io/store" "cosmossdk.io/store/metrics" storetypes "cosmossdk.io/store/types" - "cosmossdk.io/x/tx/signing" + signingmod "cosmossdk.io/x/tx/signing" dbm "github.com/cosmos/cosmos-db" + "github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1" "github.com/cosmos/cosmos-sdk/baseapp" "github.com/cosmos/cosmos-sdk/client" + "github.com/cosmos/cosmos-sdk/client/tx" "github.com/cosmos/cosmos-sdk/codec" codecaddress "github.com/cosmos/cosmos-sdk/codec/address" codectypes "github.com/cosmos/cosmos-sdk/codec/types" + cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types" "github.com/cosmos/cosmos-sdk/runtime" "github.com/cosmos/cosmos-sdk/std" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" + "github.com/cosmos/cosmos-sdk/types/tx/signing" "github.com/cosmos/cosmos-sdk/x/auth" + authante "github.com/cosmos/cosmos-sdk/x/auth/ante" authcodec "github.com/cosmos/cosmos-sdk/x/auth/codec" authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper" - "github.com/cosmos/cosmos-sdk/x/auth/tx" + authsign "github.com/cosmos/cosmos-sdk/x/auth/signing" + authtx "github.com/cosmos/cosmos-sdk/x/auth/tx" authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" "github.com/cosmos/cosmos-sdk/x/bank" bankkeeper "github.com/cosmos/cosmos-sdk/x/bank/keeper" @@ -56,7 +59,7 @@ var ModuleBasics = module.NewBasicManager( ) var ( - pubKeys = []crypto.PubKey{ + pubKeys = []cryptotypes.PubKey{ secp256k1.GenPrivKey().PubKey(), secp256k1.GenPrivKey().PubKey(), secp256k1.GenPrivKey().PubKey(), @@ -121,14 +124,14 @@ func MakeTestCodec(t testing.TB) codec.Codec { func MakeEncodingConfig(_ testing.TB) EncodingConfig { interfaceRegistry, _ := codectypes.NewInterfaceRegistryWithOptions(codectypes.InterfaceRegistryOptions{ ProtoFiles: proto.HybridResolver, - SigningOptions: signing.Options{ + SigningOptions: signingmod.Options{ AddressCodec: codecaddress.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix()), ValidatorAddressCodec: codecaddress.NewBech32Codec(sdk.GetConfig().GetBech32ValidatorAddrPrefix()), }, }) appCodec := codec.NewProtoCodec(interfaceRegistry) legacyAmino := codec.NewLegacyAmino() - txConfig := tx.NewTxConfig(appCodec, tx.DefaultSignModes) + txConfig := authtx.NewTxConfig(appCodec, authtx.DefaultSignModes) std.RegisterInterfaces(interfaceRegistry) std.RegisterLegacyAminoCodec(legacyAmino) @@ -206,7 +209,6 @@ type TestKeepers struct { BankKeeper bankkeeper.Keeper OPChildKeeper opchildkeeper.Keeper OracleKeeper *oraclekeeper.Keeper - BridgeHook *bridgeHook EncodingConfig EncodingConfig Faucet *TestFaucet } @@ -225,12 +227,12 @@ var keyCounter uint64 // we need to make this deterministic (same every test run), as encoded address size and thus gas cost, // depends on the actual bytes (due to ugly CanonicalAddress encoding) -func keyPubAddr() (crypto.PrivKey, crypto.PubKey, sdk.AccAddress) { +func keyPubAddr() (cryptotypes.PrivKey, cryptotypes.PubKey, sdk.AccAddress) { keyCounter++ seed := make([]byte, 8) binary.BigEndian.PutUint64(seed, keyCounter) - key := ed25519.GenPrivKeyFromSecret(seed) + key := secp256k1.GenPrivKeyFromSecret(seed) pub := key.PubKey() addr := sdk.AccAddress(pub.Address()) return key, pub, addr @@ -263,6 +265,8 @@ func _createTestInput( encodingConfig := MakeEncodingConfig(t) appCodec := encodingConfig.Marshaler + txDecoder := encodingConfig.TxConfig.TxDecoder() + signModeHandler := encodingConfig.TxConfig.SignModeHandler() maccPerms := map[string][]string{ // module account permissions authtypes.FeeCollectorName: nil, @@ -283,6 +287,7 @@ func _createTestInput( sdk.GetConfig().GetBech32AccountAddrPrefix(), authtypes.NewModuleAddress(opchildtypes.ModuleName).String(), ) + require.NoError(t, accountKeeper.Params.Set(ctx, authtypes.DefaultParams())) blockedAddrs := make(map[string]bool) for acc := range maccPerms { blockedAddrs[authtypes.NewModuleAddress(acc).String()] = true @@ -301,6 +306,9 @@ func _createTestInput( msgRouter := baseapp.NewMsgServiceRouter() msgRouter.SetInterfaceRegistry(encodingConfig.InterfaceRegistry) + // register bank message service to the router + banktypes.RegisterMsgServer(msgRouter, bankkeeper.NewMsgServerImpl(bankKeeper)) + oracleKeeper := oraclekeeper.NewKeeper( runtime.NewKVStoreService(keys[oracletypes.StoreKey]), appCodec, @@ -308,16 +316,21 @@ func _createTestInput( authtypes.NewModuleAddress(opchildtypes.ModuleName), ) - bridgeHook := &bridgeHook{} opchildKeeper := opchildkeeper.NewKeeper( appCodec, runtime.NewKVStoreService(keys[opchildtypes.StoreKey]), accountKeeper, bankKeeper, - bridgeHook.Hook, &oracleKeeper, + sdk.ChainAnteDecorators( + authante.NewSetPubKeyDecorator(accountKeeper), + authante.NewValidateSigCountDecorator(accountKeeper), + authante.NewSigGasConsumeDecorator(accountKeeper, authante.DefaultSigVerificationGasConsumer), + authante.NewSigVerificationDecorator(accountKeeper, signModeHandler), + authante.NewIncrementSequenceDecorator(accountKeeper), + ), + txDecoder, msgRouter, - nil, authtypes.NewModuleAddress(opchildtypes.ModuleName).String(), authcodec.NewBech32Codec(sdk.GetConfig().GetBech32AccountAddrPrefix()), authcodec.NewBech32Codec(sdk.GetConfig().GetBech32ValidatorAddrPrefix()), @@ -341,22 +354,63 @@ func _createTestInput( BankKeeper: bankKeeper, OPChildKeeper: *opchildKeeper, OracleKeeper: &oracleKeeper, - BridgeHook: bridgeHook, EncodingConfig: encodingConfig, Faucet: faucet, } return ctx, keepers } -type bridgeHook struct { - msgBytes []byte - err error -} - -func (h *bridgeHook) Hook(ctx context.Context, sender sdk.AccAddress, msgBytes []byte) error { - if h.err == nil { - h.msgBytes = msgBytes +func generateTestTx( + t *testing.T, input TestKeepers, msgs []sdk.Msg, + privs []cryptotypes.PrivKey, accNums []uint64, + accSeqs []uint64, chainID string, +) authsign.Tx { + txConfig := input.EncodingConfig.TxConfig + txBuilder := txConfig.NewTxBuilder() + + defaultSignMode, err := authsign.APISignModeToInternal(txConfig.SignModeHandler().DefaultMode()) + require.NoError(t, err) + + // set msgs + txBuilder.SetMsgs(msgs...) + + // First round: we gather all the signer infos. We use the "set empty + // signature" hack to do that. + var sigsV2 []signing.SignatureV2 + for i, priv := range privs { + sigV2 := signing.SignatureV2{ + PubKey: priv.PubKey(), + Data: &signing.SingleSignatureData{ + SignMode: defaultSignMode, + Signature: nil, + }, + Sequence: accSeqs[i], + } + + sigsV2 = append(sigsV2, sigV2) + } + err = txBuilder.SetSignatures(sigsV2...) + require.NoError(t, err) + + // Second round: all signer infos are set, so each signer can sign. + sigsV2 = []signing.SignatureV2{} + for i, priv := range privs { + signerData := authsign.SignerData{ + Address: sdk.AccAddress(priv.PubKey().Address()).String(), + ChainID: chainID, + AccountNumber: accNums[i], + Sequence: accSeqs[i], + PubKey: priv.PubKey(), + } + sigV2, err := tx.SignWithPrivKey( + context.TODO(), defaultSignMode, signerData, + txBuilder, priv, txConfig, accSeqs[i]) + require.NoError(t, err) + + sigsV2 = append(sigsV2, sigV2) } + err = txBuilder.SetSignatures(sigsV2...) + require.NoError(t, err) - return h.err + return txBuilder.GetTx() } diff --git a/x/opchild/keeper/deposit.go b/x/opchild/keeper/deposit.go new file mode 100644 index 00000000..077a6361 --- /dev/null +++ b/x/opchild/keeper/deposit.go @@ -0,0 +1,99 @@ +package keeper + +import ( + "context" + "fmt" + + sdk "github.com/cosmos/cosmos-sdk/types" + "github.com/initia-labs/OPinit/x/opchild/types" +) + +func (k Keeper) HandleBridgeHook(ctx sdk.Context, sender sdk.AccAddress, data []byte) (success bool, reason string) { + defer func() { + if r := recover(); r != nil { + reason = fmt.Sprintf("panic: %v", r) + } + + const maxReasonLength = 128 + if len(reason) > maxReasonLength { + reason = reason[:maxReasonLength] + "..." + } + }() + + tx, err := k.txDecoder(data) + if err != nil { + reason = fmt.Sprintf("Failed to decode tx: %s", err) + return + } + + ctx, err = k.decorators(ctx, tx, false) + if err != nil { + reason = fmt.Sprintf("Failed to run AnteHandler: %s", err) + return + } + + cacheCtx, commit := ctx.CacheContext() + for _, msg := range tx.GetMsgs() { + handler := k.router.Handler(msg) + if handler == nil { + reason = fmt.Sprintf("Unrecognized Msg type: %s", sdk.MsgTypeURL(msg)) + return + } + + _, err = handler(cacheCtx, msg) + if err != nil { + reason = fmt.Sprintf("Failed to execute Msg: %s", err) + return + } + } + + commit() + success = true + + return +} + +// safeDepositToken mint and send coins to the recipient. Rollback all state changes +// if the deposit is failed. +func (ms MsgServer) safeDepositToken(ctx context.Context, toAddr sdk.AccAddress, coins sdk.Coins) (success bool, reason string) { + // if coin is zero, just create an account + if coins.IsZero() { + newAcc := ms.authKeeper.NewAccountWithAddress(ctx, toAddr) + ms.authKeeper.SetAccount(ctx, newAcc) + return true, "" + } + + var err error + defer func() { + if r := recover(); r != nil { + reason = fmt.Sprintf("panic: %v", r) + } + + const maxReasonLength = 128 + if len(reason) > maxReasonLength { + reason = reason[:maxReasonLength] + "..." + } + }() + + // use cache context to avoid relaying failure + sdkCtx := sdk.UnwrapSDKContext(ctx) + cacheCtx, commit := sdkCtx.CacheContext() + + // mint coins to the module account + if err = ms.bankKeeper.MintCoins(cacheCtx, types.ModuleName, coins); err != nil { + reason = fmt.Sprintf("failed to mint coins: %s", err) + return + } + + // transfer can be failed due to contract logics + if err = ms.bankKeeper.SendCoinsFromModuleToAccount(cacheCtx, types.ModuleName, toAddr, coins); err != nil { + reason = fmt.Sprintf("failed to send coins: %s", err) + return + } + + // write the changes only if the transfer is successful + commit() + success = true + + return +} diff --git a/x/opchild/keeper/genesis.go b/x/opchild/keeper/genesis.go index 31e55a4f..06a0041b 100644 --- a/x/opchild/keeper/genesis.go +++ b/x/opchild/keeper/genesis.go @@ -89,21 +89,6 @@ func (k Keeper) InitGenesis(ctx context.Context, data *types.GenesisState) (res } } - for _, pd := range data.PendingDeposits { - addr, err := k.addressCodec.StringToBytes(pd.Recipient) - if err != nil { - panic(err) - } - - if err := pd.Coins.Validate(); err != nil { - panic(err) - } - - if err := k.PendingDeposits.Set(ctx, addr, types.CoinsWrapper{Coins: pd.Coins}); err != nil { - panic(err) - } - } - return res } @@ -152,23 +137,6 @@ func (k Keeper) ExportGenesis(ctx context.Context) *types.GenesisState { bridgeInfo = &bridgeInfo_ } - pendingDeposits := []types.PendingDeposits{} - err = k.PendingDeposits.Walk(ctx, nil, func(key []byte, value types.CoinsWrapper) (stop bool, err error) { - addr, err := k.addressCodec.BytesToString(key) - if err != nil { - return false, err - } - - pendingDeposits = append(pendingDeposits, types.PendingDeposits{ - Recipient: addr, - Coins: value.Coins, - }) - return false, nil - }) - if err != nil { - panic(err) - } - return &types.GenesisState{ Params: params, LastValidatorPowers: lastValidatorPowers, @@ -177,6 +145,5 @@ func (k Keeper) ExportGenesis(ctx context.Context) *types.GenesisState { NextL1Sequence: finalizedL1Sequence, NextL2Sequence: nextL2Sequence, BridgeInfo: bridgeInfo, - PendingDeposits: pendingDeposits, } } diff --git a/x/opchild/keeper/genesis_test.go b/x/opchild/keeper/genesis_test.go index 4ecd5cff..348af68f 100644 --- a/x/opchild/keeper/genesis_test.go +++ b/x/opchild/keeper/genesis_test.go @@ -6,8 +6,6 @@ import ( "github.com/stretchr/testify/require" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/initia-labs/OPinit/x/opchild/types" ophosttypes "github.com/initia-labs/OPinit/x/ophost/types" ) @@ -49,11 +47,6 @@ func Test_GenesisImportExport(t *testing.T) { }, } - genState.PendingDeposits = append( - genState.PendingDeposits, - types.PendingDeposits{Recipient: addrsStr[0], Coins: sdk.NewCoins(sdk.NewInt64Coin("eth", 100))}, - ) - input.OPChildKeeper.InitGenesis(ctx, genState) genState_ := input.OPChildKeeper.ExportGenesis(ctx) require.Equal(t, genState, genState_) diff --git a/x/opchild/keeper/keeper.go b/x/opchild/keeper/keeper.go index a2cb8eb5..95c6b0cd 100644 --- a/x/opchild/keeper/keeper.go +++ b/x/opchild/keeper/keeper.go @@ -14,7 +14,6 @@ import ( cmtproto "github.com/cometbft/cometbft/proto/tendermint/types" "github.com/cosmos/cosmos-sdk/baseapp" - "github.com/cosmos/cosmos-sdk/client" "github.com/cosmos/cosmos-sdk/codec" sdk "github.com/cosmos/cosmos-sdk/types" banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" @@ -31,10 +30,11 @@ type Keeper struct { authKeeper types.AccountKeeper bankKeeper types.BankKeeper - bridgeHook types.BridgeHook - // Msg server router - router *baseapp.MsgServiceRouter + // sig verify and sequence increment decorators + decorators sdk.AnteHandler + txDecoder sdk.TxDecoder + router *baseapp.MsgServiceRouter // the address capable of executing a MsgUpdateParams message. Typically, this // should be the x/opchild module account. @@ -54,7 +54,6 @@ type Keeper struct { ValidatorsByConsAddr collections.Map[[]byte, []byte] HistoricalInfos collections.Map[int64, cosmostypes.HistoricalInfo] DenomPairs collections.Map[string, string] - PendingDeposits collections.Map[[]byte, types.CoinsWrapper] Commitments collections.Map[uint64, []byte] CommitmentTimes collections.Map[uint64, time.Time] @@ -62,10 +61,6 @@ type Keeper struct { l2OracleHandler *L2OracleHandler HostValidatorStore *HostValidatorStore - - // for querier - clientCtx *client.Context - baseAppQuerier types.BaseAppQuerier } func NewKeeper( @@ -73,10 +68,20 @@ func NewKeeper( storeService corestoretypes.KVStoreService, ak types.AccountKeeper, bk types.BankKeeper, - bh types.BridgeHook, ok types.OracleKeeper, + /* + Should provide the following decorators + sdk.ChainAnteDecorators( + authante.NewSetPubKeyDecorator(accountKeeper), + authante.NewValidateSigCountDecorator(accountKeeper), + authante.NewSigGasConsumeDecorator(accountKeeper, authante.DefaultSigVerificationGasConsumer), + authante.NewSigVerificationDecorator(accountKeeper, signModeHandler), + authante.NewIncrementSequenceDecorator(accountKeeper), + ), + */ + decorators sdk.AnteHandler, + txDecoder sdk.TxDecoder, router *baseapp.MsgServiceRouter, - querier types.BaseAppQuerier, authority string, addressCodec address.Codec, validatorAddressCodec address.Codec, @@ -105,7 +110,8 @@ func NewKeeper( storeService: storeService, authKeeper: ak, bankKeeper: bk, - bridgeHook: bh, + decorators: decorators, + txDecoder: txDecoder, router: router, authority: authority, addressCodec: addressCodec, @@ -119,16 +125,12 @@ func NewKeeper( Validators: collections.NewMap(sb, types.ValidatorsPrefix, "validators", collections.BytesKey, codec.CollValue[types.Validator](cdc)), ValidatorsByConsAddr: collections.NewMap(sb, types.ValidatorsByConsAddrPrefix, "validators_by_cons_addr", collections.BytesKey, collections.BytesValue), DenomPairs: collections.NewMap(sb, types.DenomPairPrefix, "denom_pairs", collections.StringKey, collections.StringValue), - PendingDeposits: collections.NewMap(sb, types.PendingDepositsKey, "pending_deposits", collections.BytesKey, codec.CollValue[types.CoinsWrapper](cdc)), HistoricalInfos: collections.NewMap(sb, types.HistoricalInfoPrefix, "historical_infos", collections.Int64Key, codec.CollValue[cosmostypes.HistoricalInfo](cdc)), Commitments: collections.NewMap(sb, types.CommitmentPrefix, "commitments", collections.Uint64Key, collections.BytesValue), CommitmentTimes: collections.NewMap(sb, types.CommitmentTimePrefix, "commitment_times", collections.Uint64Key, collcodec.KeyToValueCodec(sdk.TimeKey)), ExecutorChangePlans: make(map[uint64]types.ExecutorChangePlan), HostValidatorStore: hostValidatorStore, - - // for querier - baseAppQuerier: querier, } schema, err := sb.Build() @@ -141,10 +143,6 @@ func NewKeeper( return k } -func (k *Keeper) SetClientContext(ctx *client.Context) { - k.clientCtx = ctx -} - // GetAuthority returns the x/move module's authority. func (k Keeper) GetAuthority() string { return k.authority diff --git a/x/opchild/keeper/keeper_test.go b/x/opchild/keeper/keeper_test.go deleted file mode 100644 index a821f5cc..00000000 --- a/x/opchild/keeper/keeper_test.go +++ /dev/null @@ -1,28 +0,0 @@ -package keeper_test - -import ( - "testing" - - "cosmossdk.io/collections" - "github.com/stretchr/testify/require" - - "github.com/initia-labs/OPinit/x/opchild/types" -) - -func Test_WithdrawalCommitmentKey(t *testing.T) { - ctx, input := createDefaultTestInput(t) - - sequence := uint64(1) - err := input.OPChildKeeper.Commitments.Set( - ctx, - sequence, - []byte{1, 2, 3, 4}, - ) - require.NoError(t, err) - - bz, err := input.OPChildKeeper.StoreService().OpenKVStore(ctx).Get(types.WithdrawalCommitmentKey(sequence)) - require.NoError(t, err) - ret, err := collections.BytesValue.Decode(bz) - require.NoError(t, err) - require.Equal(t, []byte{1, 2, 3, 4}, ret) -} diff --git a/x/opchild/keeper/msg_server.go b/x/opchild/keeper/msg_server.go index f0a90057..363112d6 100644 --- a/x/opchild/keeper/msg_server.go +++ b/x/opchild/keeper/msg_server.go @@ -3,12 +3,10 @@ package keeper import ( "bytes" "context" - "errors" + "fmt" "strconv" - "cosmossdk.io/collections" errorsmod "cosmossdk.io/errors" - "cosmossdk.io/math" cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types" sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" @@ -391,30 +389,19 @@ func (ms MsgServer) FinalizeTokenDeposit(ctx context.Context, req *types.MsgFina return nil, types.ErrInvalidSequence } - coins := sdk.NewCoins(coin) - if err := ms.bankKeeper.MintCoins(ctx, types.ModuleName, coins); err != nil { - return nil, err - } - - // handle hook - if the recipient is "hook" - executeHook := len(req.Data) > 0 && req.To == "hook" - - var toAddr sdk.AccAddress - if executeHook { - // intermediate address - toAddr = types.DeriveIntermediateSender(req.From) - } else { - toAddr, err = ms.authKeeper.AddressCodec().StringToBytes(req.To) - if err != nil { - return nil, err - } - } - - success, err := ms.safeDepositToken(ctx, toAddr, coins) + // deposit token + var success bool + var reason string + toAddr, err := ms.authKeeper.AddressCodec().StringToBytes(req.To) if err != nil { - return nil, err + success = false + reason = fmt.Sprintf("failed to convert recipient address: %s", err) + } else { + // rollback if the deposit is failed + success, reason = ms.safeDepositToken(ctx, toAddr, sdk.NewCoins(coin)) } + // updae l1 sequence if _, err := ms.IncreaseNextL1Sequence(ctx); err != nil { return nil, err } @@ -442,57 +429,34 @@ func (ms MsgServer) FinalizeTokenDeposit(ctx context.Context, req *types.MsgFina sdk.NewAttribute(types.AttributeKeyBaseDenom, req.BaseDenom), sdk.NewAttribute(types.AttributeKeyAmount, coin.Amount.String()), sdk.NewAttribute(types.AttributeKeyFinalizeHeight, strconv.FormatUint(req.Height, 10)), + sdk.NewAttribute(types.AttributeKeySuccess, strconv.FormatBool(success)), + sdk.NewAttribute(types.AttributeKeyReason, reason), ) - if success && executeHook { - cacheCtx, commit := sdkCtx.CacheContext() - - // in this case, the recipient is "hook" and the toAddr is the intermediate address - if err := ms.bridgeHook(cacheCtx, toAddr, req.Data); err == nil { - commit() - } - - event = event.AppendAttributes(sdk.NewAttribute(types.AttributeKeyHookSuccess, strconv.FormatBool(err == nil))) + // if the deposit is successful and the data is not empty, execute the hook + if success && len(req.Data) > 0 { + success, reason := ms.HandleBridgeHook(sdkCtx, toAddr, req.Data) + event = event.AppendAttributes(sdk.NewAttribute(types.AttributeKeyHookSuccess, strconv.FormatBool(success))) + event = event.AppendAttributes(sdk.NewAttribute(types.AttributeKeyHookReason, reason)) } + // emit deposit event sdkCtx.EventManager().EmitEvent(event) - return &types.MsgFinalizeTokenDepositResponse{Result: types.SUCCESS}, nil -} - -// safeDepositToken deposits the token to the recipient address -// - if the deposit is failed, it records the pending deposit -// - if the deposit is successful, it returns true and writes the changes -func (ms MsgServer) safeDepositToken(ctx context.Context, toAddr sdk.AccAddress, coins sdk.Coins) (success bool, err error) { - // use cache context to avoid relaying failure - sdkCtx := sdk.UnwrapSDKContext(ctx) - cacheCtx, commit := sdkCtx.CacheContext() - // transfer can be failed due to contract logics - if err = ms.bankKeeper.SendCoinsFromModuleToAccount(cacheCtx, types.ModuleName, toAddr, coins); err != nil { - ms.Logger(ctx).Error("failed to finalize token deposit", "error", err) - - // records pending deposits - pendingDeposits, err := ms.PendingDeposits.Get(ctx, toAddr) - if err != nil && errors.Is(err, collections.ErrNotFound) { - pendingDeposits = types.CoinsWrapper{ - Coins: sdk.NewCoins(), - } - } else if err != nil { - return false, err + // if the deposit is failed, initate a withdrawal + if !success { + l2Sequence, err := ms.IncreaseNextL2Sequence(ctx) + if err != nil { + return nil, err } - pendingDeposits.Coins = pendingDeposits.Coins.Add(coins...) - if err := ms.PendingDeposits.Set(ctx, toAddr, pendingDeposits); err != nil { - return false, err + err = ms.emitWithdrawEvents(ctx, types.NewMsgInitiateTokenWithdrawal(req.To, req.From, coin), l2Sequence) + if err != nil { + return nil, err } - - return false, nil } - // write the changes only if the transfer is successful - commit() - - return true, nil + return &types.MsgFinalizeTokenDepositResponse{Result: types.SUCCESS}, nil } ///////////////////////////////////////////////////// @@ -507,51 +471,11 @@ func (ms MsgServer) InitiateTokenWithdrawal(ctx context.Context, req *types.MsgI coin := req.Amount burnCoins := sdk.NewCoins(coin) - baseDenom, err := ms.GetBaseDenom(ctx, coin.Denom) - if err != nil { - return nil, err - } - senderAddr, err := ms.authKeeper.AddressCodec().StringToBytes(req.Sender) if err != nil { return nil, err } - // check pending deposits and withdraw from them if necessary - pendingDeposits, err := ms.PendingDeposits.Get(ctx, senderAddr) - if err == nil { - pendingAmount := pendingDeposits.Coins.AmountOf(coin.Denom) - if pendingAmount.IsPositive() { - var pendingWithdrawAmount math.Int - if coin.Amount.GT(pendingAmount) { - pendingWithdrawAmount = pendingAmount - } else { - pendingWithdrawAmount = coin.Amount - } - - // withdraw from the pending deposits - withdrawnCoinFromPendingDeposits := sdk.NewCoin(coin.Denom, pendingWithdrawAmount) - coin = coin.Sub(withdrawnCoinFromPendingDeposits) - - // update pending deposits - pendingDeposits.Coins = pendingDeposits.Coins.Sub(withdrawnCoinFromPendingDeposits) - if pendingDeposits.Coins.IsZero() { - if err := ms.PendingDeposits.Remove(ctx, senderAddr); err != nil { - return nil, err - } - } else { - if err := ms.PendingDeposits.Set(ctx, senderAddr, pendingDeposits); err != nil { - return nil, err - } - } - } - } - - l2Sequence, err := ms.IncreaseNextL2Sequence(ctx) - if err != nil { - return nil, err - } - // send coins to the module account only if the amount is positive // - pending deposits are already accounted for if coin.IsPositive() { @@ -565,6 +489,28 @@ func (ms MsgServer) InitiateTokenWithdrawal(ctx context.Context, req *types.MsgI return nil, err } + l2Sequence, err := ms.IncreaseNextL2Sequence(ctx) + if err != nil { + return nil, err + } + + err = ms.emitWithdrawEvents(ctx, req, l2Sequence) + if err != nil { + return nil, err + } + + return &types.MsgInitiateTokenWithdrawalResponse{ + Sequence: l2Sequence, + }, nil +} + +func (ms MsgServer) emitWithdrawEvents(ctx context.Context, req *types.MsgInitiateTokenWithdrawal, l2Sequence uint64) error { + coin := req.Amount + baseDenom, err := ms.GetBaseDenom(ctx, coin.Denom) + if err != nil { + return err + } + sdkCtx := sdk.UnwrapSDKContext(ctx) sdkCtx.EventManager().EmitEvent(sdk.NewEvent( types.EventTypeInitiateTokenWithdrawal, @@ -576,18 +522,7 @@ func (ms MsgServer) InitiateTokenWithdrawal(ctx context.Context, req *types.MsgI sdk.NewAttribute(types.AttributeKeyL2Sequence, strconv.FormatUint(l2Sequence, 10)), )) - // record withdrawal commitment - err = ms.SetWithdrawalCommitment(ctx, l2Sequence, types.WithdrawalCommitment{ - Commitment: types.CommitWithdrawal(l2Sequence, req.To, sdk.NewCoin(baseDenom, coin.Amount)), - SubmitTime: sdkCtx.BlockTime().UTC(), - }) - if err != nil { - return nil, err - } - - return &types.MsgInitiateTokenWithdrawalResponse{ - Sequence: l2Sequence, - }, nil + return nil } func (ms MsgServer) UpdateOracle(ctx context.Context, req *types.MsgUpdateOracle) (*types.MsgUpdateOracleResponse, error) { diff --git a/x/opchild/keeper/msg_server_test.go b/x/opchild/keeper/msg_server_test.go index e5c268ab..7464d336 100644 --- a/x/opchild/keeper/msg_server_test.go +++ b/x/opchild/keeper/msg_server_test.go @@ -3,17 +3,17 @@ package keeper_test import ( "bytes" "encoding/hex" - "encoding/json" - "errors" "math/big" "slices" "testing" "time" "cosmossdk.io/math" + cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types" testutilsims "github.com/cosmos/cosmos-sdk/testutil/sims" sdk "github.com/cosmos/cosmos-sdk/types" authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" + banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" protoio "github.com/cosmos/gogoproto/io" "github.com/cosmos/gogoproto/proto" @@ -322,14 +322,8 @@ func Test_MsgServer_Withdraw(t *testing.T) { // valid msg = types.NewMsgInitiateTokenWithdrawal(accountAddr, addrsStr[1], sdk.NewCoin(denom, math.NewInt(100))) - res, err := ms.InitiateTokenWithdrawal(ctx, msg) - require.NoError(t, err) - - sdkCtx := sdk.UnwrapSDKContext(ctx) - wc, err := input.OPChildKeeper.GetWithdrawalCommitment(sdkCtx, uint64(1)) + _, err = ms.InitiateTokenWithdrawal(ctx, msg) require.NoError(t, err) - require.Equal(t, types.CommitWithdrawal(res.Sequence, addrsStr[1], sdk.NewInt64Coin("test/token", 100)), wc.Commitment) - require.Equal(t, sdkCtx.BlockTime(), wc.SubmitTime) } ///////////////////////////////////////// @@ -423,12 +417,20 @@ func Test_MsgServer_Deposit_ToModuleAccount(t *testing.T) { require.Equal(t, math.ZeroInt(), afterToBalance.Amount) afterModuleBalance := input.BankKeeper.GetBalance(ctx, opchildModuleAddress, denom) - require.Equal(t, math.NewInt(100), afterModuleBalance.Amount) - - // pending deposits - deposits, err := input.OPChildKeeper.PendingDeposits.Get(ctx, opchildModuleAddress) - require.NoError(t, err) - require.Equal(t, deposits.Coins[0].Amount, math.NewInt(100)) + require.True(t, afterModuleBalance.Amount.IsZero()) + + // token withdrawal inititated + events := sdk.UnwrapSDKContext(ctx).EventManager().Events() + lastEvent := events[len(events)-1] + require.Equal(t, sdk.NewEvent( + types.EventTypeInitiateTokenWithdrawal, + sdk.NewAttribute(types.AttributeKeyFrom, opchildModuleAddress.String()), + sdk.NewAttribute(types.AttributeKeyTo, addrsStr[1]), + sdk.NewAttribute(types.AttributeKeyDenom, denom), + sdk.NewAttribute(types.AttributeKeyBaseDenom, "test_token"), + sdk.NewAttribute(types.AttributeKeyAmount, "100"), + sdk.NewAttribute(types.AttributeKeyL2Sequence, "1"), + ), lastEvent) } func Test_MsgServer_Deposit_NoHook(t *testing.T) { @@ -464,17 +466,28 @@ func Test_MsgServer_Deposit_HookSuccess(t *testing.T) { require.Equal(t, math.ZeroInt(), input.BankKeeper.GetBalance(ctx, addrs[1], denom).Amount) - hookMsgBytes, err := json.Marshal("message bytes") + // empty deposit to create account + priv, _, addr := keyPubAddr() + msg := types.NewMsgFinalizeTokenDeposit(addrsStr[0], addrsStr[1], addr.String(), sdk.NewCoin(denom, math.ZeroInt()), 1, 1, "test_token", nil) + _, err := ms.FinalizeTokenDeposit(ctx, msg) require.NoError(t, err) - input.BridgeHook.msgBytes = hookMsgBytes - input.BridgeHook.err = nil + // create hook data + acc := input.AccountKeeper.GetAccount(ctx, addr) + require.NotNil(t, acc) + privs, accNums, accSeqs := []cryptotypes.PrivKey{priv}, []uint64{acc.GetAccountNumber()}, []uint64{0} + signedTxBz, err := input.EncodingConfig.TxConfig.TxEncoder()(generateTestTx( + t, input, + []sdk.Msg{banktypes.NewMsgSend(addr, addrs[2], sdk.NewCoins(sdk.NewCoin(denom, math.NewInt(50))))}, // send half tokens to addrs[2] + privs, accNums, accSeqs, sdk.UnwrapSDKContext(ctx).ChainID(), + )) + require.NoError(t, err) // valid deposit - msg := types.NewMsgFinalizeTokenDeposit(addrsStr[0], addrsStr[1], "hook", sdk.NewCoin(denom, math.NewInt(100)), 1, 1, "test_token", hookMsgBytes) + ctx = sdk.UnwrapSDKContext(ctx).WithEventManager(sdk.NewEventManager()) + msg = types.NewMsgFinalizeTokenDeposit(addrsStr[0], addrsStr[1], addr.String(), sdk.NewCoin(denom, math.NewInt(100)), 2, 1, "test_token", signedTxBz) _, err = ms.FinalizeTokenDeposit(ctx, msg) require.NoError(t, err) - require.Equal(t, hookMsgBytes, input.BridgeHook.msgBytes) for _, event := range sdk.UnwrapSDKContext(ctx).EventManager().Events() { if event.Type == types.EventTypeFinalizeTokenDeposit { @@ -482,10 +495,9 @@ func Test_MsgServer_Deposit_HookSuccess(t *testing.T) { } } - // intermediate sender balance - intermediateSender := types.DeriveIntermediateSender(addrsStr[1]) - afterBalance := input.BankKeeper.GetBalance(ctx, intermediateSender, denom) - require.Equal(t, math.NewInt(100), afterBalance.Amount) + // check addrs[2] balance + afterBalance := input.BankKeeper.GetBalance(ctx, addrs[2], denom) + require.Equal(t, math.NewInt(50), afterBalance.Amount) } func Test_MsgServer_Deposit_HookFail(t *testing.T) { @@ -495,24 +507,40 @@ func Test_MsgServer_Deposit_HookFail(t *testing.T) { bz := sha3.Sum256([]byte("test_token")) denom := "l2/" + hex.EncodeToString(bz[:]) - input.BridgeHook.err = errors.New("should be failed") + require.Equal(t, math.ZeroInt(), input.BankKeeper.GetBalance(ctx, addrs[1], denom).Amount) - // valid deposit - msg := types.NewMsgFinalizeTokenDeposit(addrsStr[0], addrsStr[1], addrsStr[1], sdk.NewCoin(denom, math.NewInt(100)), 1, 1, "test_token", []byte("invalid_message")) + // empty deposit to create account + priv, _, addr := keyPubAddr() + msg := types.NewMsgFinalizeTokenDeposit(addrsStr[0], addrsStr[1], addr.String(), sdk.NewCoin(denom, math.ZeroInt()), 1, 1, "test_token", nil) _, err := ms.FinalizeTokenDeposit(ctx, msg) require.NoError(t, err) - require.Empty(t, input.BridgeHook.msgBytes) + + // create hook data + acc := input.AccountKeeper.GetAccount(ctx, addr) + require.NotNil(t, acc) + privs, accNums, accSeqs := []cryptotypes.PrivKey{priv}, []uint64{acc.GetAccountNumber()}, []uint64{0} + signedTxBz, err := input.EncodingConfig.TxConfig.TxEncoder()(generateTestTx( + t, input, + []sdk.Msg{banktypes.NewMsgSend(addr, addrs[2], sdk.NewCoins(sdk.NewCoin(denom, math.NewInt(101))))}, // send more than deposited tokens + privs, accNums, accSeqs, sdk.UnwrapSDKContext(ctx).ChainID(), + )) + require.NoError(t, err) + + // valid deposit + ctx = sdk.UnwrapSDKContext(ctx).WithEventManager(sdk.NewEventManager()) + msg = types.NewMsgFinalizeTokenDeposit(addrsStr[0], addrsStr[1], addr.String(), sdk.NewCoin(denom, math.NewInt(100)), 2, 1, "test_token", signedTxBz) + _, err = ms.FinalizeTokenDeposit(ctx, msg) + require.NoError(t, err) for _, event := range sdk.UnwrapSDKContext(ctx).EventManager().Events() { if event.Type == types.EventTypeFinalizeTokenDeposit { - for _, attr := range event.Attributes { - if attr.Key == types.AttributeKeyHookSuccess { - require.Equal(t, "false", attr.Value) - } - } + require.True(t, slices.Contains(event.Attributes, sdk.NewAttribute(types.AttributeKeyHookSuccess, "false").ToKVPair())) } } + // check addrs[2] balance + afterBalance := input.BankKeeper.GetBalance(ctx, addrs[2], denom) + require.Equal(t, math.NewInt(0), afterBalance.Amount) } func Test_MsgServer_UpdateOracle(t *testing.T) { diff --git a/x/opchild/keeper/querier.go b/x/opchild/keeper/querier.go index 09c3b770..a283d7ad 100644 --- a/x/opchild/keeper/querier.go +++ b/x/opchild/keeper/querier.go @@ -6,7 +6,6 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/status" - sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/query" "github.com/initia-labs/OPinit/x/opchild/types" @@ -104,45 +103,3 @@ func (q Querier) BaseDenom(ctx context.Context, req *types.QueryBaseDenomRequest return &types.QueryBaseDenomResponse{BaseDenom: baseDenom}, nil } - -// ForceWithdrawalProofs returns the force withdrawal proofs. -// -// @dev: This query is not deterministic and should only be used for off-chain. -// @dev: The caller must use the height query to get the app hash and commitment proof at the specific height. -// The height should be the L2 block number contained in the output submitted to L1, and this height should be higher than the block where the withdrawal occurred. -func (q Querier) ForceWithdrawalProofs(ctx context.Context, req *types.QueryForceWithdrawalProofsRequest) (*types.QueryForceWithdrawalProofsResponse, error) { - if q.clientCtx == nil { - return nil, status.Error(codes.Internal, "client context is not set") - } - - sdkCtx := sdk.UnwrapSDKContext(ctx) - height := sdkCtx.BlockHeight() - appHash, appHashProof, err := types.QueryAppHashWithProof(q.clientCtx, height) - if err != nil { - return nil, status.Error(codes.Internal, err.Error()) - } - - sequence := req.Sequence - if ok, err := q.Commitments.Has(ctx, sequence); err != nil { - return nil, status.Error(codes.Internal, err.Error()) - } else if !ok { - return nil, status.Errorf(codes.NotFound, "withdrawal commitment %d not found at height %d", sequence, height) - } - - commitmentProof, err := types.QueryCommitmentProof( - q.baseAppQuerier, - // we should compute the `height-1` here because the app hash of a block is - // the one that is committed in the previous block. - height-1, - types.WithdrawalCommitmentKey(sequence), - ) - if err != nil { - return nil, status.Error(codes.Internal, err.Error()) - } - - return &types.QueryForceWithdrawalProofsResponse{ - CommitmentProof: *commitmentProof, - AppHashProof: *appHashProof, - AppHash: appHash, - }, nil -} diff --git a/x/opchild/module.go b/x/opchild/module.go index b4285f16..5ed2e187 100644 --- a/x/opchild/module.go +++ b/x/opchild/module.go @@ -40,7 +40,6 @@ var ( // AppModuleBasic defines the basic application module used by the opchild module. type AppModuleBasic struct { cdc codec.Codec - k *keeper.Keeper } func (b AppModuleBasic) RegisterLegacyAminoCodec(amino *codec.LegacyAmino) { @@ -48,9 +47,6 @@ func (b AppModuleBasic) RegisterLegacyAminoCodec(amino *codec.LegacyAmino) { } func (b AppModuleBasic) RegisterGRPCGatewayRoutes(clientCtx client.Context, serveMux *runtime.ServeMux) { - // for commitment queries - b.k.SetClientContext(&clientCtx) - err := types.RegisterQueryHandlerClient(context.Background(), serveMux, types.NewQueryClient(clientCtx)) if err != nil { panic(err) @@ -113,7 +109,7 @@ func NewAppModule( k *keeper.Keeper, ) AppModule { return AppModule{ - AppModuleBasic: AppModuleBasic{cdc, k}, + AppModuleBasic: AppModuleBasic{cdc}, keeper: k, } } diff --git a/x/opchild/types/client.go b/x/opchild/types/client.go deleted file mode 100644 index 4ec83816..00000000 --- a/x/opchild/types/client.go +++ /dev/null @@ -1,46 +0,0 @@ -package types - -import ( - "context" - "fmt" - - abci "github.com/cometbft/cometbft/abci/types" - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" - - "github.com/cosmos/cosmos-sdk/client" -) - -type BaseAppQuerier func(_ context.Context, req *abci.RequestQuery) (resp *abci.ResponseQuery, err error) - -func QueryCommitmentProof(baseAppQuerier BaseAppQuerier, height int64, commitmentKey []byte) (*v1.ProofOps, error) { - res, err := baseAppQuerier(context.Background(), &abci.RequestQuery{ - Path: fmt.Sprintf("/store/%s/key", StoreKey), - Data: commitmentKey, - Height: height, - Prove: true, - }) - if err != nil { - return nil, err - } - - return NewProtoFromProofOps(res.ProofOps), nil -} - -func QueryAppHashWithProof(clientCtx *client.Context, height int64) ([]byte, *v1.Proof, error) { - if clientCtx == nil { - return nil, nil, fmt.Errorf("clientCtx cannot be nil") - } - - node, err := clientCtx.GetNode() - if err != nil { - return nil, nil, err - } - - block, err := node.Block(context.Background(), &height) - if err != nil { - return nil, nil, err - } - - appHashProof := NewAppHashProof(&block.Block.Header) - return block.Block.Header.AppHash, appHashProof, nil -} diff --git a/x/opchild/types/commitments.go b/x/opchild/types/commitments.go deleted file mode 100644 index 7f9492fe..00000000 --- a/x/opchild/types/commitments.go +++ /dev/null @@ -1,56 +0,0 @@ -package types - -import ( - "crypto/sha256" - "encoding/binary" - "encoding/hex" - "fmt" - - "cosmossdk.io/collections" - "cosmossdk.io/store/rootmulti" - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" - "github.com/cometbft/cometbft/libs/bytes" - sdk "github.com/cosmos/cosmos-sdk/types" -) - -// the state key for withdrawal commitment -func WithdrawalCommitmentKey(sequence uint64) []byte { - prefixLen := len(CommitmentPrefix) - buf := make([]byte, prefixLen+8) - copy(buf, CommitmentPrefix) - _, err := collections.Uint64Key.Encode(buf[prefixLen:], sequence) - if err != nil { - panic(err) - } - - return buf -} - -// CommitWithdrawal returns the withdrwwal commitment bytes. The commitment consists of: -// sha256_hash(receiver_address || l1_amount) -// from a given packet. This results in a fixed length preimage. -func CommitWithdrawal(sequence uint64, receiver string, amount sdk.Coin) []byte { - buf := make([]byte, 8) - binary.BigEndian.PutUint64(buf, sequence) - buf = append(buf, []byte(receiver)...) - buf = append(buf, amount.String()...) - hash := sha256.Sum256(buf) - return hash[:] -} - -func VerifyCommitment(appHash []byte, l2SequenceNumber uint64, receiver string, amount sdk.Coin, commitmentProof *v1.ProofOps) error { - key := WithdrawalCommitmentKey(l2SequenceNumber) - keyPath := fmt.Sprintf("/%s/x:%s", StoreKey, hex.EncodeToString(key)) - commitment := CommitWithdrawal(l2SequenceNumber, receiver, amount) - proofOps := NewProofOpsFromProto(commitmentProof) - return rootmulti.DefaultProofRuntime().VerifyValue(proofOps, appHash, keyPath, commitment) -} - -func VerifyAppHash(blockHash, appHash []byte, proof *v1.Proof) error { - mp, err := NewProofFromProto(proof) - if err != nil { - return err - } - - return mp.Verify(blockHash, cdcEncode(bytes.HexBytes(appHash))) -} diff --git a/x/opchild/types/commitments_test.go b/x/opchild/types/commitments_test.go deleted file mode 100644 index 784ea7d7..00000000 --- a/x/opchild/types/commitments_test.go +++ /dev/null @@ -1,114 +0,0 @@ -package types - -import ( - "crypto/rand" - "fmt" - "testing" - "time" - - "github.com/cometbft/cometbft/crypto/tmhash" - cmtproto "github.com/cometbft/cometbft/proto/tendermint/types" - comettypes "github.com/cometbft/cometbft/types" - - "github.com/stretchr/testify/require" - - "cosmossdk.io/log" - "cosmossdk.io/store/iavl" - "cosmossdk.io/store/metrics" - "cosmossdk.io/store/rootmulti" - storetypes "cosmossdk.io/store/types" - dbm "github.com/cosmos/cosmos-db" - sdk "github.com/cosmos/cosmos-sdk/types" -) - -func Test_VerifyCommitment(t *testing.T) { - db := dbm.NewMemDB() - store := rootmulti.NewStore(db, log.NewNopLogger(), metrics.NewNoOpMetrics()) - iavlStoreKey := storetypes.NewKVStoreKey(StoreKey) - - store.MountStoreWithDB(iavlStoreKey, storetypes.StoreTypeIAVL, nil) - require.NoError(t, store.LoadVersion(0)) - - sequence := uint64(10) - commitmentKey := WithdrawalCommitmentKey(sequence) - - recipient := "recipient" - amount := sdk.NewInt64Coin("uinit", 100) - commitment := CommitWithdrawal(sequence, recipient, amount) - - iavlStore := store.GetCommitStore(iavlStoreKey).(*iavl.Store) - iavlStore.Set(commitmentKey, commitment) - cid := store.Commit() - - // Get Proof - // same with curl https://rpc.initia.xyz/abci_query\?path\="\"store/opchild/key\""\&data=0xcommitmentkey\&prove=true - res, err := store.Query(&storetypes.RequestQuery{ - Path: fmt.Sprintf("/%s/key", StoreKey), // required path to get key/value+proof - Data: commitmentKey, - Prove: true, - }) - require.NoError(t, err) - require.NotNil(t, res.ProofOps) - - // Verify proof. - err = VerifyCommitment(cid.Hash, sequence, recipient, amount, NewProtoFromProofOps(res.ProofOps)) - require.Nil(t, err) -} - -func Test_VerifyAppHash(t *testing.T) { - block := makeRandBlock(t) - header := block.Header - appHashProof := NewAppHashProof(&header) - require.NotNil(t, appHashProof) - - err := VerifyAppHash(block.Hash(), header.AppHash, appHashProof) - require.NoError(t, err) -} - -func makeRandBlock(t *testing.T) *comettypes.Block { - txs := []comettypes.Tx{comettypes.Tx("foo"), comettypes.Tx("bar")} - lastID := makeBlockIDRandom() - h := int64(3) - voteSet, valSet, vals := randVoteSet(h-1, 1, cmtproto.PrecommitType, 10, 1, false) - extCommit, err := comettypes.MakeExtCommit(lastID, h-1, 1, voteSet, vals, time.Now(), false) - require.NoError(t, err) - - ev, err := comettypes.NewMockDuplicateVoteEvidenceWithValidator(h, time.Now(), vals[0], "block-test-chain") - require.NoError(t, err) - evList := []comettypes.Evidence{ev} - - block := comettypes.MakeBlock(h, txs, extCommit.ToCommit(), evList) - block.ValidatorsHash = valSet.Hash() - block.AppHash = tmhash.Sum([]byte("app_hash")) - - return block -} - -func makeBlockIDRandom() comettypes.BlockID { - var ( - blockHash = make([]byte, tmhash.Size) - partSetHash = make([]byte, tmhash.Size) - ) - rand.Read(blockHash) //nolint: errcheck // ignore errcheck for read - rand.Read(partSetHash) //nolint: errcheck // ignore errcheck for read - return comettypes.BlockID{Hash: blockHash, PartSetHeader: comettypes.PartSetHeader{Total: 123, Hash: partSetHash}} -} - -// NOTE: privValidators are in order -func randVoteSet( - height int64, - round int32, - signedMsgType cmtproto.SignedMsgType, - numValidators int, - votingPower int64, - extEnabled bool, -) (*comettypes.VoteSet, *comettypes.ValidatorSet, []comettypes.PrivValidator) { - valSet, privValidators := comettypes.RandValidatorSet(numValidators, votingPower) - if extEnabled { - if signedMsgType != cmtproto.PrecommitType { - return nil, nil, nil - } - return comettypes.NewExtendedVoteSet("test_chain_id", height, round, signedMsgType, valSet), valSet, privValidators - } - return comettypes.NewVoteSet("test_chain_id", height, round, signedMsgType, valSet), valSet, privValidators -} diff --git a/x/opchild/types/encoding_helper.go b/x/opchild/types/encoding_helper.go deleted file mode 100644 index 1ace99f8..00000000 --- a/x/opchild/types/encoding_helper.go +++ /dev/null @@ -1,75 +0,0 @@ -package types - -import ( - "reflect" - - gogotypes "github.com/cosmos/gogoproto/types" - - "github.com/cometbft/cometbft/libs/bytes" -) - -// cdcEncode returns nil if the input is nil, otherwise returns -// proto.Marshal(Value{Value: item}) -func cdcEncode(item interface{}) []byte { - if item != nil && !isTypedNil(item) && !isEmpty(item) { - switch item := item.(type) { - case string: - i := gogotypes.StringValue{ - Value: item, - } - bz, err := i.Marshal() - if err != nil { - return nil - } - return bz - case int64: - i := gogotypes.Int64Value{ - Value: item, - } - bz, err := i.Marshal() - if err != nil { - return nil - } - return bz - case bytes.HexBytes: - i := gogotypes.BytesValue{ - Value: item, - } - bz, err := i.Marshal() - if err != nil { - return nil - } - return bz - default: - return nil - } - } - - return nil -} - -// Go lacks a simple and safe way to see if something is a typed nil. -// See: -// - https://dave.cheney.net/2017/08/09/typed-nils-in-go-2 -// - https://groups.google.com/forum/#!topic/golang-nuts/wnH302gBa4I/discussion -// - https://github.com/golang/go/issues/21538 -func isTypedNil(o interface{}) bool { - rv := reflect.ValueOf(o) - switch rv.Kind() { - case reflect.Chan, reflect.Func, reflect.Map, reflect.Ptr, reflect.Slice: - return rv.IsNil() - default: - return false - } -} - -// Returns true if it has zero length. -func isEmpty(o interface{}) bool { - rv := reflect.ValueOf(o) - switch rv.Kind() { - case reflect.Array, reflect.Chan, reflect.Map, reflect.Slice, reflect.String: - return rv.Len() == 0 - default: - return false - } -} diff --git a/x/opchild/types/events.go b/x/opchild/types/events.go index 8d7412b5..7729e058 100644 --- a/x/opchild/types/events.go +++ b/x/opchild/types/events.go @@ -20,6 +20,8 @@ const ( AttributeKeyRecipient = "recipient" AttributeKeyAmount = "amount" AttributeKeyDenom = "denom" + AttributeKeySuccess = "success" + AttributeKeyReason = "reason" AttributeKeyBaseDenom = "base_denom" AttributeKeyStructTag = "struct_tag" AttributeKeyValidator = "validator" @@ -27,6 +29,7 @@ const ( AttributeKeyL1Sequence = "l1_sequence" AttributeKeyFinalizeHeight = "finalize_height" AttributeKeyHookSuccess = "hook_success" + AttributeKeyHookReason = "hook_reason" AttributeKeyFrom = "from" AttributeKeyTo = "to" AttributeKeyL2Sequence = "l2_sequence" diff --git a/x/opchild/types/genesis.go b/x/opchild/types/genesis.go index 59a39b2c..1827aac7 100644 --- a/x/opchild/types/genesis.go +++ b/x/opchild/types/genesis.go @@ -19,7 +19,6 @@ func NewGenesisState(params Params, validators []Validator, bridgeInfo *BridgeIn return &GenesisState{ Params: params, LastValidatorPowers: []LastValidatorPower{}, - PendingDeposits: []PendingDeposits{}, Validators: validators, Exported: false, BridgeInfo: bridgeInfo, @@ -32,7 +31,6 @@ func DefaultGenesisState() *GenesisState { Params: DefaultParams(), LastValidatorPowers: []LastValidatorPower{}, Validators: []Validator{}, - PendingDeposits: []PendingDeposits{}, NextL1Sequence: DefaultL1SequenceStart, NextL2Sequence: DefaultL2SequenceStart, BridgeInfo: nil, diff --git a/x/opchild/types/genesis.pb.go b/x/opchild/types/genesis.pb.go index 56fa90d8..e8ec6f84 100644 --- a/x/opchild/types/genesis.pb.go +++ b/x/opchild/types/genesis.pb.go @@ -33,15 +33,11 @@ type GenesisState struct { // of the last-block's bonded validators. LastValidatorPowers []LastValidatorPower `protobuf:"bytes,2,rep,name=last_validator_powers,json=lastValidatorPowers,proto3" json:"last_validator_powers"` // delegations defines the validator set at genesis. - Validators []Validator `protobuf:"bytes,3,rep,name=validators,proto3" json:"validators"` - // the pending deposits that are not failed to be deposited. - PendingDeposits []PendingDeposits `protobuf:"bytes,4,rep,name=pending_deposits,json=pendingDeposits,proto3" json:"pending_deposits"` - // the withdrawal commitments for force withdrawal. - WithdrawalCommitments []WithdrawalCommitment `protobuf:"bytes,5,rep,name=withdrawal_commitments,json=withdrawalCommitments,proto3" json:"withdrawal_commitments"` - NextL2Sequence uint64 `protobuf:"varint,6,opt,name=next_l2_sequence,json=nextL2Sequence,proto3" json:"next_l2_sequence,omitempty"` - NextL1Sequence uint64 `protobuf:"varint,7,opt,name=next_l1_sequence,json=nextL1Sequence,proto3" json:"next_l1_sequence,omitempty"` - BridgeInfo *BridgeInfo `protobuf:"bytes,8,opt,name=bridge_info,json=bridgeInfo,proto3" json:"bridge_info,omitempty"` - Exported bool `protobuf:"varint,9,opt,name=exported,proto3" json:"exported,omitempty"` + Validators []Validator `protobuf:"bytes,3,rep,name=validators,proto3" json:"validators"` + NextL2Sequence uint64 `protobuf:"varint,6,opt,name=next_l2_sequence,json=nextL2Sequence,proto3" json:"next_l2_sequence,omitempty"` + NextL1Sequence uint64 `protobuf:"varint,7,opt,name=next_l1_sequence,json=nextL1Sequence,proto3" json:"next_l1_sequence,omitempty"` + BridgeInfo *BridgeInfo `protobuf:"bytes,8,opt,name=bridge_info,json=bridgeInfo,proto3" json:"bridge_info,omitempty"` + Exported bool `protobuf:"varint,9,opt,name=exported,proto3" json:"exported,omitempty"` } func (m *GenesisState) Reset() { *m = GenesisState{} } @@ -98,20 +94,6 @@ func (m *GenesisState) GetValidators() []Validator { return nil } -func (m *GenesisState) GetPendingDeposits() []PendingDeposits { - if m != nil { - return m.PendingDeposits - } - return nil -} - -func (m *GenesisState) GetWithdrawalCommitments() []WithdrawalCommitment { - if m != nil { - return m.WithdrawalCommitments - } - return nil -} - func (m *GenesisState) GetNextL2Sequence() uint64 { if m != nil { return m.NextL2Sequence @@ -189,41 +171,36 @@ func init() { func init() { proto.RegisterFile("opinit/opchild/v1/genesis.proto", fileDescriptor_08c29689c0e7bd55) } var fileDescriptor_08c29689c0e7bd55 = []byte{ - // 535 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x93, 0x41, 0x8b, 0xd3, 0x40, - 0x14, 0xc7, 0x93, 0xdd, 0x6e, 0xb7, 0x9d, 0x8a, 0xee, 0x8e, 0x5d, 0xc9, 0x16, 0x37, 0x2d, 0x05, - 0x31, 0x08, 0x4d, 0x68, 0xbd, 0x89, 0x08, 0x56, 0xa1, 0x08, 0x0b, 0x96, 0x14, 0x54, 0xbc, 0x84, - 0x69, 0x32, 0x9b, 0x0e, 0x24, 0x33, 0x63, 0x66, 0xb6, 0xad, 0xdf, 0xc0, 0xa3, 0x1f, 0x61, 0x8f, - 0x1e, 0x3d, 0xf8, 0x21, 0xf6, 0xb8, 0x78, 0xf2, 0x24, 0xd2, 0x1e, 0xf4, 0xe8, 0x47, 0x90, 0x4e, - 0xb2, 0xd9, 0x48, 0x73, 0x09, 0xf3, 0xde, 0xfb, 0xfd, 0xff, 0xf3, 0x86, 0xbc, 0x07, 0xda, 0x8c, - 0x13, 0x4a, 0xa4, 0xc3, 0xb8, 0x3f, 0x23, 0x51, 0xe0, 0xcc, 0xfb, 0x4e, 0x88, 0x29, 0x16, 0x44, - 0xd8, 0x3c, 0x61, 0x92, 0xc1, 0xc3, 0x14, 0xb0, 0x33, 0xc0, 0x9e, 0xf7, 0x5b, 0x87, 0x28, 0x26, - 0x94, 0x39, 0xea, 0x9b, 0x52, 0xad, 0x63, 0x9f, 0x89, 0x98, 0x09, 0x4f, 0x45, 0x4e, 0x1a, 0x64, - 0xa5, 0x66, 0xc8, 0x42, 0x96, 0xe6, 0x37, 0xa7, 0x2c, 0x7b, 0xb2, 0x7d, 0xaf, 0xfc, 0xc8, 0x71, - 0x26, 0xea, 0xfe, 0xad, 0x80, 0x5b, 0xa3, 0xb4, 0x8f, 0x89, 0x44, 0x12, 0xc3, 0xa7, 0xa0, 0xca, - 0x51, 0x82, 0x62, 0x61, 0xe8, 0x1d, 0xdd, 0x6a, 0x0c, 0x8e, 0xed, 0xad, 0xbe, 0xec, 0xb1, 0x02, - 0x86, 0xf5, 0xcb, 0x9f, 0x6d, 0xed, 0xcb, 0xef, 0xaf, 0x8f, 0x74, 0x37, 0xd3, 0xc0, 0x00, 0x1c, - 0x45, 0x48, 0x48, 0x6f, 0x8e, 0x22, 0x12, 0x20, 0xc9, 0x12, 0x8f, 0xb3, 0x05, 0x4e, 0x84, 0xb1, - 0xd3, 0xd9, 0xb5, 0x1a, 0x83, 0x07, 0x25, 0x66, 0xa7, 0x48, 0xc8, 0x37, 0xd7, 0xf8, 0x78, 0x43, - 0x17, 0x8d, 0xef, 0x46, 0x5b, 0x65, 0x01, 0x47, 0x00, 0xe4, 0x17, 0x08, 0x63, 0x57, 0x59, 0xdf, - 0x2f, 0xb1, 0xce, 0x75, 0x45, 0xc7, 0x82, 0x14, 0xbe, 0x03, 0x07, 0x1c, 0xd3, 0x80, 0xd0, 0xd0, - 0x0b, 0x30, 0x67, 0x82, 0x48, 0x61, 0x54, 0x94, 0x5d, 0xb7, 0xec, 0xd9, 0x29, 0xfa, 0x32, 0x23, - 0x8b, 0xa6, 0x77, 0xf8, 0xff, 0x35, 0x48, 0xc0, 0xbd, 0x05, 0x91, 0xb3, 0x20, 0x41, 0x0b, 0x14, - 0x79, 0x3e, 0x8b, 0x63, 0x22, 0x63, 0x4c, 0xa5, 0x30, 0xf6, 0x94, 0xff, 0xc3, 0x12, 0xff, 0xb7, - 0xb9, 0xe0, 0x45, 0xce, 0x17, 0x2f, 0x39, 0x5a, 0x94, 0x00, 0x02, 0x5a, 0xe0, 0x80, 0xe2, 0xa5, - 0xf4, 0xa2, 0x81, 0x27, 0xf0, 0x87, 0x73, 0x4c, 0x7d, 0x6c, 0x54, 0x3b, 0xba, 0x55, 0x71, 0x6f, - 0x6f, 0xf2, 0xa7, 0x83, 0x49, 0x96, 0xbd, 0x21, 0xfb, 0x37, 0xe4, 0x7e, 0x81, 0xec, 0xe7, 0xe4, - 0x33, 0xd0, 0x98, 0x26, 0x24, 0x08, 0xb1, 0x47, 0xe8, 0x19, 0x33, 0x6a, 0x6a, 0x14, 0x4e, 0x4a, - 0x7a, 0x1e, 0x2a, 0xea, 0x15, 0x3d, 0x63, 0x2e, 0x98, 0xe6, 0x67, 0xd8, 0x02, 0x35, 0xbc, 0xe4, - 0x2c, 0x91, 0x38, 0x30, 0xea, 0x1d, 0xdd, 0xaa, 0xb9, 0x79, 0xdc, 0x9d, 0x01, 0xb8, 0xfd, 0xcf, - 0xe1, 0x00, 0xec, 0xa3, 0x20, 0x48, 0xb0, 0x48, 0x07, 0xaf, 0x3e, 0x34, 0xbe, 0x7f, 0xeb, 0x35, - 0xb3, 0x01, 0x7f, 0x9e, 0x56, 0x26, 0x32, 0x21, 0x34, 0x74, 0xaf, 0x41, 0xd8, 0x04, 0x7b, 0x6a, - 0xbc, 0x8c, 0x9d, 0x8e, 0x6e, 0xed, 0xba, 0x69, 0xf0, 0xa4, 0xf6, 0xe9, 0xa2, 0xad, 0xfd, 0xb9, - 0x68, 0x6b, 0xc3, 0xd1, 0xe5, 0xca, 0xd4, 0xaf, 0x56, 0xa6, 0xfe, 0x6b, 0x65, 0xea, 0x9f, 0xd7, - 0xa6, 0x76, 0xb5, 0x36, 0xb5, 0x1f, 0x6b, 0x53, 0x7b, 0xdf, 0x0b, 0x89, 0x9c, 0x9d, 0x4f, 0x6d, - 0x9f, 0xc5, 0xce, 0xe6, 0x49, 0x04, 0xf5, 0x22, 0x34, 0x15, 0xce, 0xeb, 0xb1, 0x5a, 0x96, 0x65, - 0xbe, 0x2e, 0x6a, 0x57, 0xa6, 0x55, 0xb5, 0x2c, 0x8f, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0x56, - 0xf7, 0x12, 0xfb, 0xc5, 0x03, 0x00, 0x00, + // 464 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x92, 0x41, 0x8b, 0xd3, 0x40, + 0x14, 0xc7, 0x33, 0x5b, 0xed, 0xb6, 0x53, 0x11, 0x77, 0xac, 0x90, 0x2d, 0x6e, 0x1a, 0x16, 0x84, + 0x20, 0x34, 0xa1, 0xf1, 0x26, 0x22, 0xd8, 0x4b, 0x11, 0x16, 0x2c, 0x29, 0x78, 0xf0, 0x12, 0x26, + 0xcd, 0x6c, 0x3a, 0x90, 0xce, 0xc4, 0x99, 0xd9, 0x5a, 0xbf, 0x81, 0x47, 0x3f, 0xc2, 0x1e, 0x05, + 0x2f, 0x1e, 0xfc, 0x10, 0x7b, 0x5c, 0x3c, 0x79, 0x12, 0x69, 0x0f, 0xfa, 0x31, 0x96, 0xce, 0x64, + 0xb3, 0x85, 0xf4, 0x12, 0xe6, 0xbd, 0xf7, 0x7b, 0xff, 0x79, 0x99, 0xf7, 0x87, 0x7d, 0x5e, 0x50, + 0x46, 0x55, 0xc0, 0x8b, 0xd9, 0x9c, 0xe6, 0x69, 0xb0, 0x1c, 0x06, 0x19, 0x61, 0x44, 0x52, 0xe9, + 0x17, 0x82, 0x2b, 0x8e, 0x8e, 0x0c, 0xe0, 0x97, 0x80, 0xbf, 0x1c, 0xf6, 0x8e, 0xf0, 0x82, 0x32, + 0x1e, 0xe8, 0xaf, 0xa1, 0x7a, 0xc7, 0x33, 0x2e, 0x17, 0x5c, 0xc6, 0x3a, 0x0a, 0x4c, 0x50, 0x96, + 0xba, 0x19, 0xcf, 0xb8, 0xc9, 0x6f, 0x4f, 0x65, 0xf6, 0xa4, 0x7e, 0xaf, 0xfa, 0x5c, 0x90, 0xb2, + 0xe9, 0xf4, 0x7b, 0x03, 0x3e, 0x18, 0x9b, 0x39, 0xa6, 0x0a, 0x2b, 0x82, 0x5e, 0xc1, 0x66, 0x81, + 0x05, 0x5e, 0x48, 0x1b, 0xb8, 0xc0, 0xeb, 0x84, 0xc7, 0x7e, 0x6d, 0x2e, 0x7f, 0xa2, 0x81, 0x51, + 0xfb, 0xea, 0x4f, 0xdf, 0xfa, 0xf6, 0xef, 0xc7, 0x73, 0x10, 0x95, 0x3d, 0x28, 0x85, 0x4f, 0x72, + 0x2c, 0x55, 0xbc, 0xc4, 0x39, 0x4d, 0xb1, 0xe2, 0x22, 0x2e, 0xf8, 0x27, 0x22, 0xa4, 0x7d, 0xe0, + 0x36, 0xbc, 0x4e, 0xf8, 0x6c, 0x8f, 0xd8, 0x19, 0x96, 0xea, 0xfd, 0x2d, 0x3e, 0xd9, 0xd2, 0xbb, + 0xc2, 0x8f, 0xf3, 0x5a, 0x59, 0xa2, 0x31, 0x84, 0xd5, 0x05, 0xd2, 0x6e, 0x68, 0xe9, 0xa7, 0x7b, + 0xa4, 0xab, 0xbe, 0x5d, 0xc5, 0x9d, 0x56, 0xe4, 0xc1, 0x47, 0x8c, 0xac, 0x54, 0x9c, 0x87, 0xb1, + 0x24, 0x1f, 0x2f, 0x08, 0x9b, 0x11, 0xbb, 0xe9, 0x02, 0xef, 0x5e, 0xf4, 0x70, 0x9b, 0x3f, 0x0b, + 0xa7, 0x65, 0xf6, 0x8e, 0x1c, 0xde, 0x91, 0x87, 0x3b, 0xe4, 0xb0, 0x22, 0x5f, 0xc3, 0x4e, 0x22, + 0x68, 0x9a, 0x91, 0x98, 0xb2, 0x73, 0x6e, 0xb7, 0xf4, 0x2b, 0x9e, 0xec, 0x99, 0x6e, 0xa4, 0xa9, + 0xb7, 0xec, 0x9c, 0x47, 0x30, 0xa9, 0xce, 0xa8, 0x07, 0x5b, 0x64, 0x55, 0x70, 0xa1, 0x48, 0x6a, + 0xb7, 0x5d, 0xe0, 0xb5, 0xa2, 0x2a, 0x3e, 0x9d, 0x43, 0x54, 0x7f, 0x2e, 0x14, 0xc2, 0x43, 0x9c, + 0xa6, 0x82, 0x48, 0xb3, 0xb3, 0xf6, 0xc8, 0xfe, 0xf5, 0x73, 0xd0, 0x2d, 0xbd, 0xf1, 0xc6, 0x54, + 0xa6, 0x4a, 0x50, 0x96, 0x45, 0xb7, 0x20, 0xea, 0xc2, 0xfb, 0x7a, 0x33, 0xf6, 0x81, 0x0b, 0xbc, + 0x46, 0x64, 0x82, 0x97, 0xad, 0x2f, 0x97, 0x7d, 0xeb, 0xff, 0x65, 0xdf, 0x1a, 0x8d, 0xaf, 0xd6, + 0x0e, 0xb8, 0x5e, 0x3b, 0xe0, 0xef, 0xda, 0x01, 0x5f, 0x37, 0x8e, 0x75, 0xbd, 0x71, 0xac, 0xdf, + 0x1b, 0xc7, 0xfa, 0x30, 0xc8, 0xa8, 0x9a, 0x5f, 0x24, 0xfe, 0x8c, 0x2f, 0x82, 0xed, 0x2f, 0x51, + 0x3c, 0xc8, 0x71, 0x22, 0x83, 0x77, 0x13, 0xed, 0xb3, 0x55, 0xe5, 0x34, 0x6d, 0xb3, 0xa4, 0xa9, + 0x7d, 0xf6, 0xe2, 0x26, 0x00, 0x00, 0xff, 0xff, 0xb0, 0x6d, 0xcc, 0x7e, 0x00, 0x03, 0x00, 0x00, } func (m *GenesisState) Marshal() (dAtA []byte, err error) { @@ -278,34 +255,6 @@ func (m *GenesisState) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x30 } - if len(m.WithdrawalCommitments) > 0 { - for iNdEx := len(m.WithdrawalCommitments) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.WithdrawalCommitments[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintGenesis(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - } - } - if len(m.PendingDeposits) > 0 { - for iNdEx := len(m.PendingDeposits) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.PendingDeposits[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintGenesis(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - } - } if len(m.Validators) > 0 { for iNdEx := len(m.Validators) - 1; iNdEx >= 0; iNdEx-- { { @@ -413,18 +362,6 @@ func (m *GenesisState) Size() (n int) { n += 1 + l + sovGenesis(uint64(l)) } } - if len(m.PendingDeposits) > 0 { - for _, e := range m.PendingDeposits { - l = e.Size() - n += 1 + l + sovGenesis(uint64(l)) - } - } - if len(m.WithdrawalCommitments) > 0 { - for _, e := range m.WithdrawalCommitments { - l = e.Size() - n += 1 + l + sovGenesis(uint64(l)) - } - } if m.NextL2Sequence != 0 { n += 1 + sovGenesis(uint64(m.NextL2Sequence)) } @@ -593,74 +530,6 @@ func (m *GenesisState) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PendingDeposits", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenesis - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenesis - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthGenesis - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PendingDeposits = append(m.PendingDeposits, PendingDeposits{}) - if err := m.PendingDeposits[len(m.PendingDeposits)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field WithdrawalCommitments", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenesis - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenesis - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthGenesis - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.WithdrawalCommitments = append(m.WithdrawalCommitments, WithdrawalCommitment{}) - if err := m.WithdrawalCommitments[len(m.WithdrawalCommitments)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex case 6: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field NextL2Sequence", wireType) diff --git a/x/opchild/types/hook.go b/x/opchild/types/hook.go deleted file mode 100644 index a6a0103b..00000000 --- a/x/opchild/types/hook.go +++ /dev/null @@ -1,19 +0,0 @@ -package types - -import ( - context "context" - - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/cosmos/cosmos-sdk/types/address" -) - -type BridgeHook = func(ctx context.Context, sender sdk.AccAddress, msgBytes []byte) error - -const senderPrefix = "opinit-hook-intermediary" - -// DeriveIntermediateSender compute intermediate sender address -// Bech32(Hash(Hash("opinit-hook-intermediary") + sender)) -func DeriveIntermediateSender(originalSender string) sdk.AccAddress { - senderAddr := sdk.AccAddress(address.Hash(senderPrefix, []byte(originalSender))) - return senderAddr -} diff --git a/x/opchild/types/keys.go b/x/opchild/types/keys.go index 93e5ccf8..7309f37f 100644 --- a/x/opchild/types/keys.go +++ b/x/opchild/types/keys.go @@ -27,8 +27,7 @@ var ( ValidatorsPrefix = []byte{0x32} // prefix for each key to a validator ValidatorsByConsAddrPrefix = []byte{0x33} // prefix for each key to a validator index, by pubkey - DenomPairPrefix = []byte{0x41} // prefix for the denom pair - PendingDepositsKey = []byte{0x42} // prefix for pending deposits + DenomPairPrefix = []byte{0x41} // prefix for the denom pair // HostValidatorStore keys HostHeightKey = []byte{0x51} diff --git a/x/opchild/types/proof.go b/x/opchild/types/proof.go deleted file mode 100644 index 1158bb05..00000000 --- a/x/opchild/types/proof.go +++ /dev/null @@ -1,93 +0,0 @@ -package types - -import ( - "bytes" - - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" - "github.com/cometbft/cometbft/crypto/merkle" - cmtcrypto "github.com/cometbft/cometbft/proto/tendermint/crypto" - cmttypes "github.com/cometbft/cometbft/types" - - gogotypes "github.com/cosmos/gogoproto/types" -) - -func NewProofFromProto(p *v1.Proof) (*merkle.Proof, error) { - proof := &merkle.Proof{ - Total: p.Total, - Index: p.Index, - LeafHash: p.LeafHash, - Aunts: p.Aunts, - } - - return proof, proof.ValidateBasic() -} - -func NewProofOpsFromProto(p *v1.ProofOps) *cmtcrypto.ProofOps { - ops := make([]cmtcrypto.ProofOp, len(p.Ops)) - for i, op := range p.Ops { - ops[i] = cmtcrypto.ProofOp(op) - } - - return &cmtcrypto.ProofOps{Ops: ops} -} - -func NewProtoFromProof(p *merkle.Proof) *v1.Proof { - return &v1.Proof{ - Total: p.Total, - Index: p.Index, - LeafHash: p.LeafHash, - Aunts: p.Aunts, - } -} - -func NewProtoFromProofOps(p *cmtcrypto.ProofOps) *v1.ProofOps { - ops := make([]v1.ProofOp, len(p.Ops)) - for i, op := range p.Ops { - ops[i] = v1.ProofOp(op) - } - - return &v1.ProofOps{Ops: ops} -} - -func NewAppHashProof(h *cmttypes.Header) *v1.Proof { - if h == nil || len(h.ValidatorsHash) == 0 { - return nil - } - hbz, err := h.Version.Marshal() - if err != nil { - return nil - } - - pbt, err := gogotypes.StdTimeMarshal(h.Time) - if err != nil { - return nil - } - - pbbi := h.LastBlockID.ToProto() - bzbi, err := pbbi.Marshal() - if err != nil { - return nil - } - - rootHash, proofs := merkle.ProofsFromByteSlices([][]byte{ - hbz, - cdcEncode(h.ChainID), - cdcEncode(h.Height), - pbt, - bzbi, - cdcEncode(h.LastCommitHash), - cdcEncode(h.DataHash), - cdcEncode(h.ValidatorsHash), - cdcEncode(h.NextValidatorsHash), - cdcEncode(h.ConsensusHash), - cdcEncode(h.AppHash), - cdcEncode(h.LastResultsHash), - cdcEncode(h.EvidenceHash), - cdcEncode(h.ProposerAddress), - }) - if !bytes.Equal(rootHash, h.Hash().Bytes()) { - return nil - } - - return NewProtoFromProof(proofs[10]) -} diff --git a/x/opchild/types/query.pb.go b/x/opchild/types/query.pb.go index 3d9376ad..12a58d95 100644 --- a/x/opchild/types/query.pb.go +++ b/x/opchild/types/query.pb.go @@ -6,7 +6,6 @@ package types import ( context "context" fmt "fmt" - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" _ "github.com/cosmos/cosmos-proto" _ "github.com/cosmos/cosmos-sdk/types" query "github.com/cosmos/cosmos-sdk/types/query" @@ -649,115 +648,6 @@ func (m *QueryBaseDenomResponse) GetBaseDenom() string { return "" } -// QueryForceWithdrawalProofsRequest is request type for the Query/ForceWithdrawalProofs RPC method. -type QueryForceWithdrawalProofsRequest struct { - // sequence is the sequence number of the withdrawal. - Sequence uint64 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"` -} - -func (m *QueryForceWithdrawalProofsRequest) Reset() { *m = QueryForceWithdrawalProofsRequest{} } -func (m *QueryForceWithdrawalProofsRequest) String() string { return proto.CompactTextString(m) } -func (*QueryForceWithdrawalProofsRequest) ProtoMessage() {} -func (*QueryForceWithdrawalProofsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_15cfbb5d02a763ec, []int{14} -} -func (m *QueryForceWithdrawalProofsRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryForceWithdrawalProofsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryForceWithdrawalProofsRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryForceWithdrawalProofsRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryForceWithdrawalProofsRequest.Merge(m, src) -} -func (m *QueryForceWithdrawalProofsRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryForceWithdrawalProofsRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryForceWithdrawalProofsRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryForceWithdrawalProofsRequest proto.InternalMessageInfo - -func (m *QueryForceWithdrawalProofsRequest) GetSequence() uint64 { - if m != nil { - return m.Sequence - } - return 0 -} - -// QueryForceWithdrawalProofsResponse is response type for the Query/ForceWithdrawalProofs RPC method. -type QueryForceWithdrawalProofsResponse struct { - // withdrawal commitments and proofs - CommitmentProof v1.ProofOps `protobuf:"bytes,3,opt,name=commitment_proof,json=commitmentProof,proto3" json:"commitment_proof" yaml:"commitment_proof"` - // app hash and proof - AppHash []byte `protobuf:"bytes,4,opt,name=app_hash,json=appHash,proto3" json:"app_hash,omitempty" yaml:"app_hash"` - AppHashProof v1.Proof `protobuf:"bytes,5,opt,name=app_hash_proof,json=appHashProof,proto3" json:"app_hash_proof" yaml:"app_hash_proof"` -} - -func (m *QueryForceWithdrawalProofsResponse) Reset() { *m = QueryForceWithdrawalProofsResponse{} } -func (m *QueryForceWithdrawalProofsResponse) String() string { return proto.CompactTextString(m) } -func (*QueryForceWithdrawalProofsResponse) ProtoMessage() {} -func (*QueryForceWithdrawalProofsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_15cfbb5d02a763ec, []int{15} -} -func (m *QueryForceWithdrawalProofsResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryForceWithdrawalProofsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryForceWithdrawalProofsResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryForceWithdrawalProofsResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryForceWithdrawalProofsResponse.Merge(m, src) -} -func (m *QueryForceWithdrawalProofsResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryForceWithdrawalProofsResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryForceWithdrawalProofsResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryForceWithdrawalProofsResponse proto.InternalMessageInfo - -func (m *QueryForceWithdrawalProofsResponse) GetCommitmentProof() v1.ProofOps { - if m != nil { - return m.CommitmentProof - } - return v1.ProofOps{} -} - -func (m *QueryForceWithdrawalProofsResponse) GetAppHash() []byte { - if m != nil { - return m.AppHash - } - return nil -} - -func (m *QueryForceWithdrawalProofsResponse) GetAppHashProof() v1.Proof { - if m != nil { - return m.AppHashProof - } - return v1.Proof{} -} - func init() { proto.RegisterType((*QueryValidatorsRequest)(nil), "opinit.opchild.v1.QueryValidatorsRequest") proto.RegisterType((*QueryValidatorsResponse)(nil), "opinit.opchild.v1.QueryValidatorsResponse") @@ -773,79 +663,64 @@ func init() { proto.RegisterType((*QueryNextL2SequenceResponse)(nil), "opinit.opchild.v1.QueryNextL2SequenceResponse") proto.RegisterType((*QueryBaseDenomRequest)(nil), "opinit.opchild.v1.QueryBaseDenomRequest") proto.RegisterType((*QueryBaseDenomResponse)(nil), "opinit.opchild.v1.QueryBaseDenomResponse") - proto.RegisterType((*QueryForceWithdrawalProofsRequest)(nil), "opinit.opchild.v1.QueryForceWithdrawalProofsRequest") - proto.RegisterType((*QueryForceWithdrawalProofsResponse)(nil), "opinit.opchild.v1.QueryForceWithdrawalProofsResponse") } func init() { proto.RegisterFile("opinit/opchild/v1/query.proto", fileDescriptor_15cfbb5d02a763ec) } var fileDescriptor_15cfbb5d02a763ec = []byte{ - // 1039 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x96, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xc7, 0xb3, 0x69, 0x13, 0xea, 0x97, 0x92, 0xb6, 0xd3, 0x84, 0x3a, 0x4e, 0xe2, 0x84, 0x81, - 0xa4, 0x6e, 0x90, 0x77, 0xea, 0x05, 0x84, 0x54, 0x81, 0x2a, 0x2c, 0x68, 0xa8, 0x84, 0x68, 0x70, - 0x24, 0x40, 0x5c, 0xcc, 0xd8, 0x3b, 0xb1, 0x57, 0xf2, 0xee, 0x6c, 0x77, 0x27, 0x69, 0xa2, 0x28, - 0x42, 0xe2, 0xc4, 0x8d, 0x4a, 0x70, 0xe4, 0xc2, 0xad, 0x12, 0x17, 0x0e, 0xfc, 0x07, 0x5c, 0x7a, - 0xac, 0xe0, 0xc2, 0x29, 0x42, 0x09, 0x12, 0x67, 0xfa, 0x17, 0xa0, 0x9d, 0x99, 0xdd, 0xf5, 0xda, - 0xeb, 0xc4, 0xe5, 0x92, 0x64, 0xe7, 0xfd, 0xf8, 0x7e, 0xf6, 0xcd, 0xcb, 0x57, 0x0b, 0xcb, 0xdc, - 0x77, 0x3c, 0x47, 0x10, 0xee, 0xb7, 0xbb, 0x4e, 0xcf, 0x26, 0x7b, 0x35, 0xf2, 0x70, 0x97, 0x05, - 0x07, 0xa6, 0x1f, 0x70, 0xc1, 0xd1, 0x35, 0x15, 0x36, 0x75, 0xd8, 0xdc, 0xab, 0x95, 0xae, 0x51, - 0xd7, 0xf1, 0x38, 0x91, 0x3f, 0x55, 0x56, 0xa9, 0xdc, 0xe6, 0x2e, 0x13, 0xad, 0x1d, 0x41, 0xda, - 0xc1, 0x81, 0x2f, 0x78, 0xd4, 0xc5, 0x0f, 0x38, 0xdf, 0xd1, 0xf1, 0x8d, 0x36, 0x0f, 0x5d, 0x1e, - 0x92, 0x16, 0x0d, 0x99, 0x6a, 0x4f, 0xf6, 0x6a, 0x2d, 0x26, 0x68, 0x8d, 0xf8, 0xb4, 0xe3, 0x78, - 0x54, 0x38, 0xdc, 0x4b, 0x7b, 0xa5, 0xb9, 0x71, 0x56, 0x9b, 0x3b, 0x71, 0x7c, 0x51, 0xc7, 0xe3, - 0x36, 0xfd, 0xb8, 0xa5, 0x05, 0x15, 0x6c, 0xca, 0x27, 0xa2, 0x1e, 0x74, 0x68, 0xae, 0xc3, 0x3b, - 0x5c, 0x9d, 0x47, 0x7f, 0xe9, 0xd3, 0xa5, 0x0e, 0xe7, 0x9d, 0x1e, 0x23, 0xd4, 0x77, 0x08, 0xf5, - 0x3c, 0x2e, 0x24, 0x4a, 0x5c, 0x93, 0x33, 0x1c, 0x71, 0xe0, 0x33, 0x1d, 0xc6, 0x5f, 0xc1, 0x2b, - 0x9f, 0x46, 0xe2, 0x9f, 0xd1, 0x9e, 0x63, 0x53, 0xc1, 0x83, 0xb0, 0xc1, 0x1e, 0xee, 0xb2, 0x50, - 0xa0, 0x7b, 0x00, 0xe9, 0x8b, 0x15, 0x8d, 0x55, 0xa3, 0x32, 0x63, 0xad, 0x9b, 0x9a, 0x27, 0x7a, - 0x33, 0x53, 0x51, 0xeb, 0xf7, 0x33, 0xb7, 0x68, 0x87, 0xe9, 0xda, 0x46, 0x5f, 0x25, 0xfe, 0xd9, - 0x80, 0x1b, 0x43, 0x12, 0xa1, 0xcf, 0xbd, 0x90, 0xa1, 0x4d, 0x80, 0xbd, 0xe4, 0xb4, 0x68, 0xac, - 0x5e, 0xa8, 0xcc, 0x58, 0x4b, 0xe6, 0xd0, 0x7d, 0x99, 0x49, 0x69, 0xbd, 0xf0, 0xf4, 0x78, 0x65, - 0xe2, 0xc9, 0x3f, 0xbf, 0x6c, 0x18, 0x8d, 0xbe, 0xd2, 0xa8, 0x51, 0x1f, 0xec, 0xa4, 0x84, 0xbd, - 0x79, 0x2e, 0xac, 0xa2, 0xc8, 0xd0, 0x7e, 0x01, 0xf3, 0x59, 0xd8, 0x78, 0x1c, 0x77, 0x61, 0x36, - 0xd1, 0x6b, 0x52, 0xdb, 0x0e, 0xe4, 0x48, 0x0a, 0xf5, 0xe2, 0xef, 0xbf, 0x56, 0xe7, 0xb4, 0xd0, - 0xfb, 0xb6, 0x1d, 0xb0, 0x30, 0xdc, 0x16, 0x81, 0xe3, 0x75, 0x1a, 0x2f, 0x27, 0xf9, 0xd1, 0x39, - 0x6e, 0x0e, 0x4e, 0x3a, 0x99, 0xc2, 0x87, 0x50, 0x48, 0x52, 0xf5, 0xa0, 0xc7, 0x1e, 0x42, 0x5a, - 0x89, 0x8b, 0x5a, 0xa0, 0x1e, 0x38, 0x76, 0x87, 0xdd, 0xf7, 0x76, 0xb8, 0x66, 0xc7, 0xb6, 0xbe, - 0x81, 0xfe, 0x88, 0xd6, 0xbe, 0x0f, 0x33, 0x2d, 0x79, 0xda, 0x74, 0xbc, 0x1d, 0xae, 0xd5, 0x97, - 0x73, 0xd4, 0xd3, 0xda, 0xcc, 0x1d, 0xb4, 0x92, 0x63, 0x3c, 0x07, 0x48, 0xaa, 0x6c, 0xd1, 0x80, - 0xba, 0xf1, 0x1a, 0xe1, 0x6d, 0xb8, 0x9e, 0x39, 0xd5, 0xba, 0xef, 0xc2, 0xb4, 0x2f, 0x4f, 0xb4, - 0xe4, 0x42, 0x8e, 0xa4, 0x2a, 0xe9, 0x97, 0xd3, 0x35, 0x78, 0x09, 0x4a, 0xb2, 0xe9, 0x27, 0x6c, - 0x5f, 0x7c, 0x5c, 0xdb, 0x8e, 0xa4, 0xbc, 0x76, 0xbc, 0x7d, 0x78, 0x13, 0x16, 0x73, 0xa3, 0x5a, - 0xba, 0x02, 0x57, 0x3d, 0xb6, 0x2f, 0x9a, 0xbd, 0x5a, 0x33, 0xd4, 0x31, 0x09, 0x71, 0xb1, 0x31, - 0xeb, 0x65, 0x2a, 0xb2, 0x32, 0xd6, 0x99, 0x32, 0xd6, 0x68, 0x19, 0x2b, 0x5f, 0x26, 0xa9, 0xc0, - 0x55, 0xbd, 0x73, 0x75, 0x1a, 0xb2, 0x0f, 0x98, 0xc7, 0xdd, 0x78, 0xe7, 0xe6, 0x60, 0xca, 0x8e, - 0x9e, 0xd5, 0xaa, 0x35, 0xd4, 0x03, 0x7e, 0x27, 0xbe, 0xe7, 0x34, 0x5d, 0x4b, 0x2e, 0x03, 0x44, - 0xbb, 0xde, 0xec, 0x2f, 0x2a, 0xb4, 0xe2, 0x34, 0x7c, 0x17, 0x5e, 0x95, 0x85, 0xf7, 0x78, 0xd0, - 0x66, 0x9f, 0x3b, 0xa2, 0x6b, 0x07, 0xf4, 0x11, 0xed, 0x6d, 0x45, 0x2e, 0x97, 0xfc, 0xdb, 0x97, - 0xe0, 0xd2, 0x00, 0x6e, 0xf2, 0x8c, 0x9f, 0x4c, 0x02, 0x3e, 0xab, 0x83, 0xc6, 0x70, 0xe1, 0x6a, - 0x9b, 0xbb, 0xae, 0x23, 0x5c, 0xe6, 0x89, 0xa6, 0x34, 0xd1, 0xe2, 0x05, 0xbd, 0xd6, 0xb1, 0xcb, - 0x9a, 0xca, 0x65, 0xe5, 0x35, 0x47, 0x09, 0x0f, 0xfc, 0xb0, 0xfe, 0x7a, 0x74, 0xd1, 0xcf, 0x8f, - 0x57, 0x6e, 0x1c, 0x50, 0xb7, 0x77, 0x07, 0x0f, 0xf6, 0xc0, 0x6a, 0x07, 0xae, 0xa4, 0xe7, 0xb2, - 0x12, 0x99, 0x70, 0x89, 0xfa, 0x7e, 0xb3, 0x4b, 0xc3, 0x6e, 0xf1, 0xe2, 0xaa, 0x51, 0xb9, 0x5c, - 0xbf, 0xfe, 0xfc, 0x78, 0xe5, 0x8a, 0x6a, 0x12, 0x47, 0x70, 0xe3, 0x25, 0xea, 0xfb, 0x1f, 0xd1, - 0xb0, 0x8b, 0xda, 0x30, 0x1b, 0x9f, 0x6a, 0xb8, 0x29, 0xbd, 0x82, 0xa3, 0xe0, 0xea, 0x58, 0x93, - 0xcd, 0x67, 0x9b, 0x66, 0xb8, 0x2e, 0xeb, 0xfe, 0xb2, 0xc2, 0xfa, 0xb7, 0x00, 0x53, 0x72, 0x54, - 0xe8, 0x3b, 0x03, 0x20, 0xb5, 0x3e, 0x74, 0x2b, 0x67, 0xd1, 0xf3, 0x1d, 0xb8, 0xb4, 0x31, 0x4e, - 0xaa, 0x9a, 0x39, 0xde, 0xf8, 0x36, 0x82, 0xf8, 0xe6, 0x8f, 0xbf, 0xbf, 0x9f, 0x5c, 0x41, 0xcb, - 0x64, 0xd8, 0xf4, 0xfb, 0xcc, 0xf2, 0x47, 0x03, 0x0a, 0x49, 0x0b, 0x54, 0x39, 0x57, 0x25, 0xe6, - 0xb9, 0x35, 0x46, 0xa6, 0xc6, 0xb9, 0x93, 0xe2, 0x10, 0x54, 0x3d, 0x0b, 0x87, 0x1c, 0x66, 0x6d, - 0xf5, 0x08, 0x3d, 0x36, 0x00, 0x52, 0xb7, 0x19, 0x3d, 0xb0, 0x21, 0x9f, 0x1b, 0x3d, 0xb0, 0x61, - 0xe3, 0xc3, 0x6f, 0xa4, 0x84, 0xab, 0xa8, 0x9c, 0x43, 0xd8, 0x67, 0x8b, 0xe8, 0x6b, 0x98, 0x56, - 0x66, 0x84, 0xd6, 0x46, 0x49, 0x64, 0x5c, 0xaf, 0xb4, 0x7e, 0x5e, 0x9a, 0xa6, 0x58, 0x4f, 0x29, - 0x16, 0xd1, 0x42, 0x0e, 0x85, 0x32, 0x3c, 0xf4, 0x93, 0x01, 0xb3, 0x59, 0x3b, 0x43, 0xd5, 0x51, - 0x12, 0xb9, 0xa6, 0x58, 0x32, 0xc7, 0x4d, 0xd7, 0x64, 0xb7, 0x53, 0xb2, 0x35, 0xf4, 0x5a, 0x0e, - 0xd9, 0xa0, 0x87, 0xa6, 0x8c, 0xd6, 0x98, 0x8c, 0xd6, 0x8b, 0x31, 0x5a, 0xff, 0x97, 0x31, 0x35, - 0x60, 0xf4, 0x83, 0x01, 0x85, 0xc4, 0x37, 0x47, 0xaf, 0xfe, 0xa0, 0x13, 0x8f, 0x5e, 0xfd, 0x21, - 0x13, 0xc6, 0x56, 0x0a, 0x75, 0x13, 0xad, 0xe5, 0x2d, 0x56, 0x62, 0xd1, 0xe4, 0x50, 0xfe, 0x3a, - 0x42, 0xbf, 0x19, 0x30, 0x9f, 0xeb, 0xa9, 0xe8, 0xad, 0x51, 0xc2, 0x67, 0x99, 0x78, 0xe9, 0xed, - 0x17, 0xac, 0xd2, 0xe8, 0xef, 0xa5, 0xe8, 0x16, 0xba, 0x9d, 0x83, 0xfe, 0x28, 0xa9, 0x0c, 0xc9, - 0x61, 0x3c, 0xd4, 0x23, 0xf5, 0x9d, 0x1c, 0xd6, 0x37, 0x9f, 0x9e, 0x94, 0x8d, 0x67, 0x27, 0x65, - 0xe3, 0xaf, 0x93, 0xb2, 0xf1, 0xf8, 0xb4, 0x3c, 0xf1, 0xec, 0xb4, 0x3c, 0xf1, 0xe7, 0x69, 0x79, - 0xe2, 0xcb, 0x6a, 0xc7, 0x11, 0xdd, 0xdd, 0x56, 0x64, 0xb0, 0x24, 0xea, 0xe9, 0xd0, 0x6a, 0x8f, - 0xb6, 0x42, 0xf2, 0x60, 0x4b, 0x2a, 0xec, 0x27, 0x1a, 0xf2, 0xd3, 0xb4, 0x35, 0x2d, 0xbf, 0x4d, - 0xdf, 0xfc, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x77, 0xb0, 0x7d, 0x2c, 0xd9, 0x0b, 0x00, 0x00, + // 826 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x96, 0xcf, 0x6b, 0x13, 0x4d, + 0x18, 0xc7, 0xb3, 0x7d, 0xdf, 0x96, 0x37, 0x4f, 0x79, 0x8b, 0x1d, 0xa3, 0xa6, 0x69, 0xb3, 0x2d, + 0x2b, 0x6d, 0xd3, 0x48, 0x76, 0xcc, 0x7a, 0x10, 0x44, 0x10, 0x83, 0x5a, 0x0a, 0xa2, 0x35, 0x05, + 0x11, 0x2f, 0x71, 0x36, 0xbb, 0xdd, 0x2e, 0x24, 0x3b, 0xdb, 0xdd, 0x6d, 0x68, 0x29, 0x45, 0xf0, + 0xe4, 0xcd, 0x82, 0x1e, 0xbd, 0x78, 0x13, 0x7a, 0xf1, 0xe0, 0x1f, 0xd1, 0x63, 0xd1, 0x8b, 0x27, + 0x91, 0x56, 0xf0, 0xdf, 0x90, 0x9d, 0x9d, 0xfd, 0xd5, 0x6c, 0xda, 0xe8, 0xa5, 0xcd, 0x3c, 0x3f, + 0xe6, 0xfb, 0x99, 0x67, 0x9e, 0x67, 0x58, 0x28, 0x53, 0xdb, 0xb4, 0x4c, 0x0f, 0x53, 0xbb, 0xbd, + 0x61, 0x76, 0x34, 0xdc, 0xab, 0xe3, 0xcd, 0x2d, 0xdd, 0xd9, 0x91, 0x6d, 0x87, 0x7a, 0x14, 0x4d, + 0x06, 0x6e, 0x99, 0xbb, 0xe5, 0x5e, 0xbd, 0x34, 0x49, 0xba, 0xa6, 0x45, 0x31, 0xfb, 0x1b, 0x44, + 0x95, 0xaa, 0x6d, 0xea, 0x76, 0xa9, 0x8b, 0x55, 0xe2, 0xea, 0x41, 0x3a, 0xee, 0xd5, 0x55, 0xdd, + 0x23, 0x75, 0x6c, 0x13, 0xc3, 0xb4, 0x88, 0x67, 0x52, 0x8b, 0xc7, 0x8a, 0xc9, 0xd8, 0x30, 0xaa, + 0x4d, 0xcd, 0xd0, 0x3f, 0xcd, 0xfd, 0xe1, 0x36, 0x49, 0x9c, 0xd2, 0x54, 0xe0, 0x6c, 0xb1, 0x15, + 0x0e, 0x16, 0xdc, 0x55, 0x30, 0xa8, 0x41, 0x03, 0xbb, 0xff, 0x8b, 0x5b, 0x67, 0x0c, 0x4a, 0x8d, + 0x8e, 0x8e, 0x89, 0x6d, 0x62, 0x62, 0x59, 0xd4, 0x63, 0x28, 0x61, 0x4e, 0xc6, 0xe1, 0xbd, 0x1d, + 0x5b, 0xe7, 0x6e, 0xe9, 0x05, 0x5c, 0x7e, 0xe2, 0x8b, 0x3f, 0x25, 0x1d, 0x53, 0x23, 0x1e, 0x75, + 0xdc, 0xa6, 0xbe, 0xb9, 0xa5, 0xbb, 0x1e, 0x7a, 0x00, 0x10, 0x1f, 0xac, 0x28, 0xcc, 0x09, 0x95, + 0x71, 0x65, 0x41, 0xe6, 0x3c, 0xfe, 0xc9, 0xe4, 0x80, 0x9a, 0x9f, 0x4f, 0x5e, 0x25, 0x86, 0xce, + 0x73, 0x9b, 0x89, 0x4c, 0xe9, 0x40, 0x80, 0x2b, 0x7d, 0x12, 0xae, 0x4d, 0x2d, 0x57, 0x47, 0xcb, + 0x00, 0xbd, 0xc8, 0x5a, 0x14, 0xe6, 0xfe, 0xa9, 0x8c, 0x2b, 0x33, 0x72, 0xdf, 0x7d, 0xc8, 0x51, + 0x6a, 0x23, 0x7f, 0xf8, 0x7d, 0x36, 0xf7, 0xf1, 0xd7, 0xa7, 0xaa, 0xd0, 0x4c, 0xa4, 0xfa, 0x1b, + 0x25, 0x60, 0x47, 0x18, 0xec, 0xe2, 0xb9, 0xb0, 0x01, 0x45, 0x8a, 0xf6, 0x19, 0x5c, 0x4a, 0xc3, + 0x86, 0xe5, 0xb8, 0x03, 0x13, 0x91, 0x5e, 0x8b, 0x68, 0x9a, 0xc3, 0x4a, 0x92, 0x6f, 0x14, 0xbf, + 0x7c, 0xae, 0x15, 0xb8, 0xd0, 0x5d, 0x4d, 0x73, 0x74, 0xd7, 0x5d, 0xf3, 0x1c, 0xd3, 0x32, 0x9a, + 0xff, 0x47, 0xf1, 0xbe, 0x5d, 0x6a, 0x9d, 0xae, 0x74, 0x54, 0x85, 0xfb, 0x90, 0x8f, 0x42, 0x79, + 0xa1, 0x87, 0x2e, 0x42, 0x9c, 0x29, 0x15, 0xb9, 0x40, 0xc3, 0x31, 0x35, 0x43, 0x5f, 0xb1, 0xd6, + 0x29, 0x67, 0x97, 0x34, 0x7e, 0x03, 0x49, 0x0f, 0xd7, 0x5e, 0x81, 0x71, 0x95, 0x59, 0x5b, 0xa6, + 0xb5, 0x4e, 0xb9, 0x7a, 0x39, 0x43, 0x3d, 0xce, 0x4d, 0xdd, 0x81, 0x1a, 0x99, 0xa5, 0x02, 0x20, + 0xa6, 0xb2, 0x4a, 0x1c, 0xd2, 0x0d, 0xdb, 0x48, 0x5a, 0x83, 0x8b, 0x29, 0x2b, 0xd7, 0xbd, 0x0d, + 0x63, 0x36, 0xb3, 0x70, 0xc9, 0xa9, 0x0c, 0xc9, 0x20, 0x25, 0x29, 0xc7, 0x73, 0xa4, 0x19, 0x28, + 0xb1, 0x4d, 0x1f, 0xe9, 0xdb, 0xde, 0xc3, 0xfa, 0x9a, 0x2f, 0x65, 0xb5, 0xc3, 0xee, 0x93, 0x96, + 0x61, 0x3a, 0xd3, 0xcb, 0xa5, 0x2b, 0x70, 0xc1, 0xd2, 0xb7, 0xbd, 0x56, 0xa7, 0xde, 0x72, 0xb9, + 0x8f, 0x41, 0xfc, 0xdb, 0x9c, 0xb0, 0x52, 0x19, 0x69, 0x19, 0xe5, 0x4c, 0x19, 0x65, 0xb0, 0x8c, + 0x92, 0x2d, 0x13, 0x65, 0x48, 0x35, 0xde, 0x73, 0x0d, 0xe2, 0xea, 0xf7, 0x74, 0x8b, 0x76, 0xc3, + 0x9e, 0x2b, 0xc0, 0xa8, 0xe6, 0xaf, 0x83, 0x56, 0x6b, 0x06, 0x0b, 0xe9, 0x66, 0x78, 0xcf, 0x71, + 0x38, 0x97, 0x2c, 0x03, 0xf8, 0xbd, 0xde, 0x4a, 0x26, 0xe5, 0xd5, 0x30, 0x4c, 0x39, 0xf8, 0x0f, + 0x46, 0x59, 0x26, 0x7a, 0x23, 0x00, 0xc4, 0xe3, 0x88, 0x96, 0x32, 0x8a, 0x9f, 0xfd, 0x2a, 0x94, + 0xaa, 0xc3, 0x84, 0x06, 0x38, 0x52, 0xf5, 0xb5, 0x7f, 0x69, 0xaf, 0xbe, 0xfe, 0x7c, 0x3b, 0x32, + 0x8b, 0xca, 0xb8, 0xff, 0x21, 0x4a, 0x0c, 0xf0, 0x7b, 0x01, 0xf2, 0xd1, 0x16, 0xa8, 0x72, 0xae, + 0x4a, 0xc8, 0xb3, 0x34, 0x44, 0x24, 0xc7, 0xb9, 0x15, 0xe3, 0x60, 0x54, 0x3b, 0x0b, 0x07, 0xef, + 0xa6, 0x47, 0x7d, 0x0f, 0xed, 0x0b, 0x00, 0xf1, 0x04, 0x0c, 0x2e, 0x58, 0xdf, 0xec, 0x0d, 0x2e, + 0x58, 0xff, 0x30, 0x4a, 0xd7, 0x62, 0xc2, 0x39, 0x24, 0x66, 0x10, 0x26, 0x46, 0x15, 0xbd, 0x84, + 0xb1, 0x60, 0x40, 0xd0, 0xfc, 0x20, 0x89, 0xd4, 0x24, 0x96, 0x16, 0xce, 0x0b, 0xe3, 0x14, 0x0b, + 0x31, 0xc5, 0x34, 0x9a, 0xca, 0xa0, 0x08, 0x86, 0x10, 0x7d, 0x10, 0x60, 0x22, 0x3d, 0x62, 0xa8, + 0x36, 0x48, 0x22, 0x73, 0x50, 0x4b, 0xf2, 0xb0, 0xe1, 0x9c, 0xec, 0x7a, 0x4c, 0x36, 0x8f, 0xae, + 0x66, 0x90, 0x9d, 0x9e, 0xeb, 0x98, 0x51, 0x19, 0x92, 0x51, 0xf9, 0x33, 0x46, 0xe5, 0x6f, 0x19, + 0xe3, 0x47, 0x01, 0xbd, 0x13, 0x20, 0x1f, 0xcd, 0xf2, 0xe0, 0xd6, 0x3f, 0xfd, 0x3a, 0x0c, 0x6e, + 0xfd, 0xbe, 0x87, 0x41, 0x52, 0x62, 0xa8, 0x45, 0x34, 0x9f, 0xd5, 0x58, 0xd1, 0xb3, 0x81, 0x77, + 0xd9, 0xbf, 0xbd, 0xc6, 0xf2, 0xe1, 0xb1, 0x28, 0x1c, 0x1d, 0x8b, 0xc2, 0x8f, 0x63, 0x51, 0xd8, + 0x3f, 0x11, 0x73, 0x47, 0x27, 0x62, 0xee, 0xdb, 0x89, 0x98, 0x7b, 0x5e, 0x33, 0x4c, 0x6f, 0x63, + 0x4b, 0x95, 0xdb, 0xb4, 0x8b, 0xfd, 0x8d, 0x4c, 0x52, 0xeb, 0x10, 0xd5, 0xc5, 0x8f, 0x57, 0xd9, + 0xb6, 0xdb, 0xd1, 0xc6, 0xec, 0x43, 0x43, 0x1d, 0x63, 0x5f, 0x1a, 0x37, 0x7e, 0x07, 0x00, 0x00, + 0xff, 0xff, 0xf0, 0x63, 0xf9, 0xf4, 0x87, 0x09, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -876,7 +751,6 @@ type QueryClient interface { // NextL2Sequence queries the next l2 sequence number. NextL2Sequence(ctx context.Context, in *QueryNextL2SequenceRequest, opts ...grpc.CallOption) (*QueryNextL2SequenceResponse, error) BaseDenom(ctx context.Context, in *QueryBaseDenomRequest, opts ...grpc.CallOption) (*QueryBaseDenomResponse, error) - ForceWithdrawalProofs(ctx context.Context, in *QueryForceWithdrawalProofsRequest, opts ...grpc.CallOption) (*QueryForceWithdrawalProofsResponse, error) } type queryClient struct { @@ -950,15 +824,6 @@ func (c *queryClient) BaseDenom(ctx context.Context, in *QueryBaseDenomRequest, return out, nil } -func (c *queryClient) ForceWithdrawalProofs(ctx context.Context, in *QueryForceWithdrawalProofsRequest, opts ...grpc.CallOption) (*QueryForceWithdrawalProofsResponse, error) { - out := new(QueryForceWithdrawalProofsResponse) - err := c.cc.Invoke(ctx, "/opinit.opchild.v1.Query/ForceWithdrawalProofs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - // QueryServer is the server API for Query service. type QueryServer interface { // Validators queries all validators @@ -977,7 +842,6 @@ type QueryServer interface { // NextL2Sequence queries the next l2 sequence number. NextL2Sequence(context.Context, *QueryNextL2SequenceRequest) (*QueryNextL2SequenceResponse, error) BaseDenom(context.Context, *QueryBaseDenomRequest) (*QueryBaseDenomResponse, error) - ForceWithdrawalProofs(context.Context, *QueryForceWithdrawalProofsRequest) (*QueryForceWithdrawalProofsResponse, error) } // UnimplementedQueryServer can be embedded to have forward compatible implementations. @@ -1005,9 +869,6 @@ func (*UnimplementedQueryServer) NextL2Sequence(ctx context.Context, req *QueryN func (*UnimplementedQueryServer) BaseDenom(ctx context.Context, req *QueryBaseDenomRequest) (*QueryBaseDenomResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BaseDenom not implemented") } -func (*UnimplementedQueryServer) ForceWithdrawalProofs(ctx context.Context, req *QueryForceWithdrawalProofsRequest) (*QueryForceWithdrawalProofsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ForceWithdrawalProofs not implemented") -} func RegisterQueryServer(s grpc1.Server, srv QueryServer) { s.RegisterService(&_Query_serviceDesc, srv) @@ -1139,24 +1000,6 @@ func _Query_BaseDenom_Handler(srv interface{}, ctx context.Context, dec func(int return interceptor(ctx, in, info, handler) } -func _Query_ForceWithdrawalProofs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryForceWithdrawalProofsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).ForceWithdrawalProofs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/opinit.opchild.v1.Query/ForceWithdrawalProofs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).ForceWithdrawalProofs(ctx, req.(*QueryForceWithdrawalProofsRequest)) - } - return interceptor(ctx, in, info, handler) -} - var _Query_serviceDesc = grpc.ServiceDesc{ ServiceName: "opinit.opchild.v1.Query", HandlerType: (*QueryServer)(nil), @@ -1189,10 +1032,6 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "BaseDenom", Handler: _Query_BaseDenom_Handler, }, - { - MethodName: "ForceWithdrawalProofs", - Handler: _Query_ForceWithdrawalProofs_Handler, - }, }, Streams: []grpc.StreamDesc{}, Metadata: "opinit/opchild/v1/query.proto", @@ -1619,84 +1458,6 @@ func (m *QueryBaseDenomResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *QueryForceWithdrawalProofsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryForceWithdrawalProofsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryForceWithdrawalProofsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Sequence != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.Sequence)) - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - -func (m *QueryForceWithdrawalProofsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryForceWithdrawalProofsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryForceWithdrawalProofsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.AppHashProof.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - if len(m.AppHash) > 0 { - i -= len(m.AppHash) - copy(dAtA[i:], m.AppHash) - i = encodeVarintQuery(dAtA, i, uint64(len(m.AppHash))) - i-- - dAtA[i] = 0x22 - } - { - size, err := m.CommitmentProof.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - return len(dAtA) - i, nil -} - func encodeVarintQuery(dAtA []byte, offset int, v uint64) int { offset -= sovQuery(v) base := offset @@ -1872,35 +1633,6 @@ func (m *QueryBaseDenomResponse) Size() (n int) { return n } -func (m *QueryForceWithdrawalProofsRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Sequence != 0 { - n += 1 + sovQuery(uint64(m.Sequence)) - } - return n -} - -func (m *QueryForceWithdrawalProofsResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = m.CommitmentProof.Size() - n += 1 + l + sovQuery(uint64(l)) - l = len(m.AppHash) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = m.AppHashProof.Size() - n += 1 + l + sovQuery(uint64(l)) - return n -} - func sovQuery(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -2946,225 +2678,6 @@ func (m *QueryBaseDenomResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryForceWithdrawalProofsRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryForceWithdrawalProofsRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryForceWithdrawalProofsRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Sequence", wireType) - } - m.Sequence = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Sequence |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryForceWithdrawalProofsResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryForceWithdrawalProofsResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryForceWithdrawalProofsResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CommitmentProof", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.CommitmentProof.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppHash", wireType) - } - var byteLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AppHash = append(m.AppHash[:0], dAtA[iNdEx:postIndex]...) - if m.AppHash == nil { - m.AppHash = []byte{} - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppHashProof", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.AppHashProof.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func skipQuery(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/x/opchild/types/query.pb.gw.go b/x/opchild/types/query.pb.gw.go index e3932d60..d80c1fcc 100644 --- a/x/opchild/types/query.pb.gw.go +++ b/x/opchild/types/query.pb.gw.go @@ -249,60 +249,6 @@ func local_request_Query_BaseDenom_0(ctx context.Context, marshaler runtime.Mars } -func request_Query_ForceWithdrawalProofs_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryForceWithdrawalProofsRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["sequence"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "sequence") - } - - protoReq.Sequence, err = runtime.Uint64(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "sequence", err) - } - - msg, err := client.ForceWithdrawalProofs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_ForceWithdrawalProofs_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryForceWithdrawalProofsRequest - var metadata runtime.ServerMetadata - - var ( - val string - ok bool - err error - _ = err - ) - - val, ok = pathParams["sequence"] - if !ok { - return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "sequence") - } - - protoReq.Sequence, err = runtime.Uint64(val) - - if err != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "sequence", err) - } - - msg, err := server.ForceWithdrawalProofs(ctx, &protoReq) - return msg, metadata, err - -} - // RegisterQueryHandlerServer registers the http handlers for service Query to "mux". // UnaryRPC :call QueryServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -470,29 +416,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_ForceWithdrawalProofs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_ForceWithdrawalProofs_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_ForceWithdrawalProofs_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - return nil } @@ -674,26 +597,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_ForceWithdrawalProofs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_ForceWithdrawalProofs_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_ForceWithdrawalProofs_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - return nil } @@ -711,8 +614,6 @@ var ( pattern_Query_NextL2Sequence_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"opinit", "opchild", "v1", "next_l2_sequence"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_BaseDenom_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"opinit", "opchild", "v1", "base_denom", "denom"}, "", runtime.AssumeColonVerbOpt(false))) - - pattern_Query_ForceWithdrawalProofs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"opinit", "opchild", "v1", "withdrawals", "sequence", "proofs"}, "", runtime.AssumeColonVerbOpt(false))) ) var ( @@ -729,6 +630,4 @@ var ( forward_Query_NextL2Sequence_0 = runtime.ForwardResponseMessage forward_Query_BaseDenom_0 = runtime.ForwardResponseMessage - - forward_Query_ForceWithdrawalProofs_0 = runtime.ForwardResponseMessage ) diff --git a/x/opchild/types/tx.go b/x/opchild/types/tx.go index 671f3c83..4ec8e411 100644 --- a/x/opchild/types/tx.go +++ b/x/opchild/types/tx.go @@ -258,7 +258,7 @@ func (msg MsgFinalizeTokenDeposit) Validate(ac address.Codec) error { } } - if !msg.Amount.IsValid() || msg.Amount.IsZero() { + if !msg.Amount.IsValid() { return ErrInvalidAmount } diff --git a/x/opchild/types/tx.pb.go b/x/opchild/types/tx.pb.go index 7e4ef3aa..eb827172 100644 --- a/x/opchild/types/tx.pb.go +++ b/x/opchild/types/tx.pb.go @@ -197,7 +197,7 @@ type MsgFinalizeTokenDeposit struct { Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` // from is l1 sender address From string `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"` - // to is l2 recipient address + // to is l2 recipient address or "hook" To string `protobuf:"bytes,3,opt,name=to,proto3" json:"to,omitempty"` // amount is the coin amount to deposit. Amount types1.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount" yaml:"amount"` @@ -788,83 +788,83 @@ func init() { func init() { proto.RegisterFile("opinit/opchild/v1/tx.proto", fileDescriptor_1ee96a503651b6e4) } var fileDescriptor_1ee96a503651b6e4 = []byte{ - // 1206 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x57, 0x41, 0x6f, 0xe3, 0xc4, - 0x17, 0x8f, 0x93, 0x6e, 0xda, 0x4e, 0x77, 0xff, 0x6d, 0xad, 0xea, 0x5f, 0xd7, 0xa2, 0x49, 0x65, - 0x84, 0x08, 0x61, 0x63, 0x6f, 0x83, 0xe0, 0x10, 0x09, 0x89, 0x86, 0xdd, 0x4a, 0x65, 0x15, 0x6d, - 0xe5, 0x2e, 0x20, 0x71, 0xa0, 0x4c, 0xe2, 0xa9, 0x33, 0x6a, 0xec, 0x31, 0x9e, 0x49, 0x68, 0xb8, - 0x80, 0x38, 0x21, 0x4e, 0x7c, 0x84, 0x3d, 0x20, 0x84, 0x38, 0xf5, 0xc0, 0x69, 0xe1, 0x03, 0x54, - 0x7b, 0x5a, 0x71, 0x40, 0x9c, 0x0a, 0xb4, 0x87, 0x72, 0xde, 0x2b, 0x17, 0x64, 0xcf, 0xc4, 0x71, - 0x12, 0xbb, 0xe9, 0xa2, 0xc2, 0xa5, 0xcd, 0xbc, 0xf7, 0x9b, 0x37, 0xef, 0xf7, 0xde, 0x9b, 0xf7, - 0xc6, 0x40, 0x25, 0x1e, 0x76, 0x31, 0x33, 0x88, 0xd7, 0x6a, 0xe3, 0x8e, 0x65, 0xf4, 0x36, 0x0d, - 0x76, 0xa4, 0x7b, 0x3e, 0x61, 0x44, 0x5e, 0xe6, 0x3a, 0x5d, 0xe8, 0xf4, 0xde, 0xa6, 0xba, 0x0c, - 0x1d, 0xec, 0x12, 0x23, 0xfc, 0xcb, 0x51, 0x6a, 0xa1, 0x45, 0xa8, 0x43, 0xa8, 0xd1, 0x84, 0x14, - 0x19, 0xbd, 0xcd, 0x26, 0x62, 0x70, 0xd3, 0x68, 0x11, 0xec, 0x0a, 0xfd, 0xaa, 0xd0, 0x3b, 0xd4, - 0x0e, 0xac, 0x3b, 0xd4, 0x16, 0x8a, 0x35, 0xae, 0xd8, 0x0f, 0x57, 0x06, 0x5f, 0x08, 0xd5, 0x8a, - 0x4d, 0x6c, 0xc2, 0xe5, 0xc1, 0xaf, 0xc1, 0x06, 0x9b, 0x10, 0xbb, 0x83, 0x8c, 0x70, 0xd5, 0xec, - 0x1e, 0x18, 0xd0, 0xed, 0x0b, 0xd5, 0x7a, 0x02, 0x8d, 0xbe, 0x87, 0x84, 0x3d, 0xed, 0x1b, 0x09, - 0xc8, 0x0d, 0x6a, 0xdf, 0x3b, 0x42, 0xad, 0x2e, 0x43, 0x0d, 0x44, 0x29, 0xb4, 0x11, 0x95, 0xef, - 0x80, 0x3c, 0x45, 0xae, 0x85, 0x7c, 0x45, 0xda, 0x90, 0x4a, 0xf3, 0x75, 0xe5, 0xe7, 0x1f, 0x2a, - 0x2b, 0xc2, 0x91, 0x2d, 0xcb, 0xf2, 0x11, 0xa5, 0x7b, 0xcc, 0xc7, 0xae, 0x6d, 0x0a, 0x9c, 0x7c, - 0x07, 0xcc, 0x39, 0x62, 0xb7, 0x92, 0xdd, 0xc8, 0x95, 0x16, 0xaa, 0x2b, 0x3a, 0xf7, 0x4a, 0x1f, - 0x78, 0xa5, 0x6f, 0xb9, 0x7d, 0x33, 0x42, 0xd5, 0xca, 0x5f, 0x5c, 0x1c, 0x97, 0xc5, 0xf6, 0xaf, - 0x2e, 0x8e, 0xcb, 0xea, 0xc0, 0xc5, 0x49, 0x7f, 0xb4, 0x17, 0x80, 0x3a, 0x29, 0x35, 0x11, 0xf5, - 0x88, 0x4b, 0x91, 0xf6, 0x44, 0x02, 0x4b, 0x0d, 0x6a, 0xef, 0x21, 0x56, 0xf7, 0xb1, 0x65, 0xa3, - 0x1d, 0xf7, 0x80, 0xc8, 0x5b, 0x63, 0x14, 0x5e, 0x79, 0x76, 0x5a, 0xbc, 0xd5, 0x87, 0x4e, 0xa7, - 0xa6, 0x71, 0xb9, 0x36, 0x95, 0xd3, 0x0e, 0x58, 0x68, 0x86, 0x06, 0xf7, 0xb1, 0x7b, 0x40, 0x94, - 0xec, 0x86, 0x54, 0x5a, 0xa8, 0xae, 0xeb, 0x13, 0xc9, 0xd7, 0x87, 0xc7, 0xd6, 0xe7, 0x4f, 0x4e, - 0x8b, 0x99, 0xef, 0x2e, 0x8e, 0xcb, 0x92, 0x09, 0x9a, 0x91, 0xb8, 0x56, 0x1a, 0x23, 0xab, 0xc4, - 0xc8, 0x8e, 0xf8, 0xad, 0xa9, 0x40, 0x19, 0x97, 0x45, 0x44, 0xbf, 0xcd, 0x81, 0xd5, 0x06, 0xb5, - 0xb7, 0xb1, 0x0b, 0x3b, 0xf8, 0x53, 0xf4, 0x90, 0x1c, 0x22, 0xf7, 0x2e, 0xf2, 0x08, 0xc5, 0xec, - 0x3a, 0xf8, 0xde, 0x06, 0x33, 0x07, 0x3e, 0x71, 0x42, 0xa2, 0x97, 0xe5, 0x3c, 0x44, 0xc9, 0x25, - 0x90, 0x65, 0x44, 0xc9, 0x4d, 0xc1, 0x66, 0x19, 0x91, 0x1b, 0x20, 0x0f, 0x1d, 0xd2, 0x75, 0x99, - 0x32, 0x13, 0x86, 0x70, 0x4d, 0x17, 0xd0, 0xe0, 0x66, 0xe8, 0xe2, 0x66, 0xe8, 0x6f, 0x13, 0xec, - 0xd6, 0xd5, 0x20, 0x7c, 0x43, 0xcf, 0xf9, 0x36, 0x8d, 0xc7, 0x53, 0x18, 0x91, 0x55, 0x30, 0x47, - 0xd1, 0xc7, 0x5d, 0xe4, 0xb6, 0x90, 0x72, 0x63, 0x43, 0x2a, 0xcd, 0x98, 0xd1, 0x5a, 0xfe, 0x3f, - 0xc8, 0xb7, 0x11, 0xb6, 0xdb, 0x4c, 0xc9, 0x87, 0x1a, 0xb1, 0x92, 0xd7, 0x01, 0x08, 0x0e, 0xdb, - 0xb7, 0x90, 0x4b, 0x1c, 0x65, 0x36, 0x70, 0xda, 0x9c, 0x0f, 0x24, 0x77, 0x03, 0x81, 0xbc, 0x0e, - 0x66, 0x2c, 0xc8, 0xa0, 0x32, 0xb7, 0x21, 0x95, 0x6e, 0x86, 0x39, 0x94, 0xf8, 0x99, 0xa1, 0xb8, - 0x66, 0x8c, 0x65, 0xaf, 0x18, 0xcb, 0x5e, 0x52, 0x32, 0xb4, 0x8f, 0x40, 0x31, 0x45, 0x35, 0xc8, - 0xa5, 0xfc, 0x26, 0xc8, 0xfb, 0x88, 0x76, 0x3b, 0x2c, 0xcc, 0xd7, 0xff, 0xaa, 0x2f, 0x25, 0xd4, - 0xd5, 0x00, 0x6c, 0x86, 0xc0, 0x87, 0x7d, 0x0f, 0x99, 0x62, 0x93, 0xf6, 0x97, 0x14, 0x5e, 0x89, - 0x1d, 0x17, 0x33, 0x0c, 0x19, 0x3f, 0xe2, 0x7d, 0xcc, 0xda, 0x96, 0x0f, 0x3f, 0x81, 0x9d, 0x7f, - 0x70, 0x81, 0x79, 0x3a, 0xb3, 0xff, 0x79, 0x3a, 0x6b, 0xd5, 0xb1, 0xe0, 0x6a, 0xb1, 0xe0, 0xa6, - 0xd0, 0xd3, 0xde, 0x02, 0x5a, 0xba, 0x36, 0x0a, 0x71, 0xbc, 0x50, 0xa4, 0xd1, 0x42, 0xd1, 0x1e, - 0x67, 0xc1, 0x62, 0x83, 0xda, 0x5b, 0x96, 0xf5, 0x1e, 0xec, 0x60, 0x0b, 0x32, 0xe2, 0xcb, 0xef, - 0x80, 0x79, 0xd8, 0x65, 0x6d, 0xe2, 0x63, 0xd6, 0x17, 0x71, 0xbb, 0xfd, 0xec, 0xb4, 0xb8, 0x24, - 0x9c, 0x1f, 0xa8, 0xd2, 0x2f, 0xd2, 0x70, 0xbb, 0xac, 0x80, 0x59, 0x87, 0xb8, 0xf8, 0x10, 0xf9, - 0x3c, 0xa6, 0xe6, 0x60, 0x29, 0xdf, 0x03, 0xcb, 0xbd, 0xc1, 0x91, 0xfb, 0x90, 0xef, 0x9f, 0x7a, - 0x8d, 0x96, 0xa2, 0x2d, 0x42, 0x2e, 0x6f, 0x83, 0xbc, 0xd7, 0x6d, 0x1e, 0xa2, 0xbe, 0xc8, 0x42, - 0x62, 0xbb, 0xad, 0x2b, 0x4f, 0x86, 0x16, 0x5b, 0x7e, 0xdf, 0x63, 0x44, 0xdf, 0xed, 0x36, 0xef, - 0xa3, 0xbe, 0x29, 0x76, 0xd7, 0xaa, 0x5f, 0x3e, 0x2a, 0x66, 0xfe, 0x7c, 0x54, 0xcc, 0x04, 0x69, - 0x18, 0x12, 0x08, 0x32, 0xb1, 0x1a, 0xcb, 0x44, 0x3c, 0x50, 0xda, 0x5a, 0xd8, 0x86, 0xe2, 0xa2, - 0xa8, 0x45, 0xfd, 0xc2, 0x07, 0x8a, 0x89, 0x1c, 0xd2, 0x43, 0xff, 0x4e, 0x68, 0x13, 0x03, 0x98, - 0x7d, 0xde, 0x00, 0xd6, 0x2a, 0x93, 0x84, 0xe3, 0x23, 0x68, 0x8c, 0x81, 0x18, 0x41, 0x63, 0xd2, - 0x88, 0xf6, 0x4f, 0x52, 0x58, 0x4e, 0xef, 0x7a, 0x16, 0x64, 0x68, 0x17, 0xfa, 0xd0, 0xa1, 0xd7, - 0xca, 0x79, 0x13, 0xe4, 0xbd, 0xd0, 0xaa, 0x98, 0x42, 0x6b, 0x09, 0xdd, 0x82, 0x1f, 0x6b, 0x0a, - 0x20, 0x9f, 0xaf, 0xe9, 0x09, 0x8d, 0xbb, 0x2a, 0x12, 0x1a, 0x17, 0x0d, 0x99, 0xf1, 0x8b, 0xb2, - 0xe7, 0x21, 0xd7, 0xda, 0x46, 0x68, 0x97, 0x90, 0xce, 0xb5, 0x32, 0x7b, 0x03, 0xcc, 0xfb, 0xa8, - 0x85, 0x3d, 0x8c, 0x5c, 0x36, 0x35, 0x8b, 0x43, 0xa8, 0xdc, 0x8f, 0xba, 0x50, 0x2e, 0x7c, 0x6e, - 0x5c, 0xd2, 0x85, 0xb6, 0x13, 0xbb, 0xd0, 0xf7, 0xbf, 0x15, 0x4b, 0x36, 0x66, 0xed, 0x6e, 0x53, - 0x6f, 0x11, 0x47, 0x3c, 0xb3, 0xc4, 0xbf, 0x0a, 0xb5, 0x0e, 0xc5, 0x3b, 0x29, 0xb0, 0x40, 0x47, - 0x3b, 0xd6, 0x94, 0xc8, 0xc6, 0x43, 0x25, 0x22, 0x1b, 0x17, 0x45, 0x91, 0xfd, 0x31, 0x5e, 0x33, - 0x0f, 0x7c, 0xd8, 0xea, 0xa0, 0xeb, 0x98, 0xe2, 0xeb, 0xd1, 0x08, 0x0c, 0xa2, 0x39, 0x53, 0xbf, - 0x21, 0x9c, 0x8f, 0x26, 0x21, 0x1f, 0x75, 0xb9, 0xe4, 0x51, 0xf7, 0xf2, 0x58, 0x37, 0x9e, 0x2c, - 0x19, 0xee, 0xe9, 0x48, 0xc9, 0x70, 0xd1, 0x80, 0x58, 0xf5, 0xf1, 0x2c, 0xc8, 0x35, 0xa8, 0x2d, - 0xdb, 0x60, 0x71, 0xfc, 0x61, 0x99, 0x34, 0xe5, 0x26, 0x5f, 0x76, 0x6a, 0xe5, 0x4a, 0xb0, 0xa8, - 0xd1, 0x43, 0x70, 0x6b, 0xf4, 0xf1, 0xf7, 0x62, 0xf2, 0xfe, 0x11, 0x90, 0xfa, 0xea, 0x15, 0x40, - 0xd1, 0x11, 0x3d, 0xb0, 0x92, 0xf8, 0xec, 0x2a, 0x27, 0x1b, 0x49, 0xc2, 0xaa, 0xd5, 0xab, 0x63, - 0xa3, 0x73, 0x3f, 0x03, 0xab, 0x69, 0x33, 0x3e, 0x25, 0x48, 0x29, 0x70, 0xf5, 0xf5, 0xe7, 0x82, - 0x47, 0x0e, 0x7c, 0x08, 0x6e, 0x8e, 0x0c, 0x49, 0x2d, 0xd9, 0x4c, 0x1c, 0xa3, 0x96, 0xa7, 0x63, - 0x22, 0xfb, 0x36, 0x58, 0x1c, 0x1f, 0x16, 0x29, 0x45, 0x32, 0x06, 0x4b, 0x2b, 0x92, 0x94, 0x16, - 0x1d, 0x10, 0x19, 0x69, 0xcf, 0x29, 0x44, 0xe2, 0x98, 0x34, 0x22, 0x49, 0x8d, 0x32, 0xb0, 0x3f, - 0xd2, 0x24, 0x53, 0xec, 0xc7, 0x31, 0x69, 0xf6, 0x93, 0xda, 0xc5, 0xd0, 0x7f, 0xd1, 0x2a, 0x2e, - 0xf5, 0x9f, 0x63, 0x2e, 0xf7, 0x7f, 0xf4, 0xd6, 0xaa, 0x37, 0x3e, 0x0f, 0xda, 0x40, 0xfd, 0xfe, - 0xc9, 0x1f, 0x85, 0xcc, 0xc9, 0x59, 0x41, 0x7a, 0x7a, 0x56, 0x90, 0x7e, 0x3f, 0x2b, 0x48, 0x5f, - 0x9f, 0x17, 0x32, 0x4f, 0xcf, 0x0b, 0x99, 0x5f, 0xcf, 0x0b, 0x99, 0x0f, 0x2a, 0xb1, 0x8e, 0x89, - 0xc3, 0xca, 0xa9, 0x74, 0x60, 0x93, 0x1a, 0x0f, 0x76, 0xc3, 0xaf, 0xcc, 0xa3, 0xe8, 0x3b, 0x33, - 0x6c, 0x9e, 0xcd, 0x7c, 0xf8, 0x18, 0x79, 0xed, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x92, 0x33, - 0xd1, 0xf2, 0x4d, 0x0f, 0x00, 0x00, + // 1205 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0x41, 0x6f, 0xe3, 0x44, + 0x14, 0x8e, 0xd3, 0x36, 0x6d, 0xa6, 0xbb, 0xdb, 0xd6, 0xaa, 0xa8, 0x6b, 0xd1, 0xa4, 0x32, 0x42, + 0x84, 0x40, 0xec, 0x6d, 0x10, 0x1c, 0x22, 0x21, 0xd1, 0xb0, 0x5b, 0xa9, 0xac, 0xa2, 0xad, 0xd2, + 0x05, 0x24, 0x0e, 0x94, 0x49, 0x3c, 0x75, 0x46, 0x8d, 0x3d, 0xc6, 0x33, 0x09, 0x0d, 0x17, 0x10, + 0x27, 0xc4, 0x89, 0x9f, 0xb0, 0x07, 0x0e, 0x88, 0x53, 0x0f, 0x9c, 0x16, 0x7e, 0x40, 0xb5, 0xa7, + 0x15, 0x07, 0xc4, 0xa9, 0x40, 0x7b, 0x28, 0xe7, 0x5e, 0xb9, 0x20, 0x8f, 0x27, 0x8e, 0xe3, 0xd8, + 0x6d, 0x17, 0x75, 0x2f, 0x6d, 0xe6, 0xbd, 0x6f, 0xde, 0xbc, 0xf7, 0xbd, 0x37, 0xef, 0x8d, 0x81, + 0x4a, 0x5c, 0xec, 0x60, 0x66, 0x10, 0xb7, 0xdd, 0xc1, 0x5d, 0xd3, 0xe8, 0x6f, 0x18, 0xec, 0x50, + 0x77, 0x3d, 0xc2, 0x88, 0xbc, 0x14, 0xe8, 0x74, 0xa1, 0xd3, 0xfb, 0x1b, 0xea, 0x12, 0xb4, 0xb1, + 0x43, 0x0c, 0xfe, 0x37, 0x40, 0xa9, 0x85, 0x36, 0xa1, 0x36, 0xa1, 0x46, 0x0b, 0x52, 0x64, 0xf4, + 0x37, 0x5a, 0x88, 0xc1, 0x0d, 0xa3, 0x4d, 0xb0, 0x23, 0xf4, 0x2b, 0x42, 0x6f, 0x53, 0xcb, 0xb7, + 0x6e, 0x53, 0x4b, 0x28, 0x56, 0x03, 0xc5, 0x1e, 0x5f, 0x19, 0xc1, 0x42, 0xa8, 0x96, 0x2d, 0x62, + 0x91, 0x40, 0xee, 0xff, 0x1a, 0x6e, 0xb0, 0x08, 0xb1, 0xba, 0xc8, 0xe0, 0xab, 0x56, 0x6f, 0xdf, + 0x80, 0xce, 0x40, 0xa8, 0xd6, 0x12, 0xc2, 0x18, 0xb8, 0x48, 0xd8, 0xd3, 0x7e, 0x90, 0x80, 0xdc, + 0xa0, 0xd6, 0xfd, 0x43, 0xd4, 0xee, 0x31, 0xd4, 0x40, 0x94, 0x42, 0x0b, 0x51, 0xf9, 0x2e, 0xc8, + 0x51, 0xe4, 0x98, 0xc8, 0x53, 0xa4, 0x75, 0xa9, 0x94, 0xaf, 0x2b, 0xbf, 0xfd, 0x5c, 0x59, 0x16, + 0x8e, 0x6c, 0x9a, 0xa6, 0x87, 0x28, 0xdd, 0x65, 0x1e, 0x76, 0xac, 0xa6, 0xc0, 0xc9, 0x77, 0xc1, + 0x9c, 0x2d, 0x76, 0x2b, 0xd9, 0xf5, 0xa9, 0xd2, 0x7c, 0x75, 0x59, 0x0f, 0xbc, 0xd2, 0x87, 0x5e, + 0xe9, 0x9b, 0xce, 0xa0, 0x19, 0xa2, 0x6a, 0xe5, 0x6f, 0xce, 0x8f, 0xca, 0x62, 0xfb, 0x77, 0xe7, + 0x47, 0x65, 0x75, 0xe8, 0xe2, 0xa4, 0x3f, 0xda, 0xcb, 0x40, 0x9d, 0x94, 0x36, 0x11, 0x75, 0x89, + 0x43, 0x91, 0xf6, 0x54, 0x02, 0x8b, 0x0d, 0x6a, 0xed, 0x22, 0x56, 0xf7, 0xb0, 0x69, 0xa1, 0x6d, + 0x67, 0x9f, 0xc8, 0x9b, 0xb1, 0x10, 0x5e, 0xbf, 0x38, 0x29, 0xde, 0x1e, 0x40, 0xbb, 0x5b, 0xd3, + 0x02, 0xb9, 0x76, 0x65, 0x4c, 0xdb, 0x60, 0xbe, 0xc5, 0x0d, 0xee, 0x61, 0x67, 0x9f, 0x28, 0xd9, + 0x75, 0xa9, 0x34, 0x5f, 0x5d, 0xd3, 0x27, 0x92, 0xaf, 0x8f, 0x8e, 0xad, 0xe7, 0x8f, 0x4f, 0x8a, + 0x99, 0x1f, 0xcf, 0x8f, 0xca, 0x52, 0x13, 0xb4, 0x42, 0x71, 0xad, 0x14, 0x0b, 0x56, 0x89, 0x04, + 0x3b, 0xe6, 0xb7, 0xa6, 0x02, 0x25, 0x2e, 0x0b, 0x03, 0xbd, 0xc8, 0x82, 0x95, 0x06, 0xb5, 0xb6, + 0xb0, 0x03, 0xbb, 0xf8, 0x4b, 0xf4, 0x88, 0x1c, 0x20, 0xe7, 0x1e, 0x72, 0x09, 0xc5, 0xec, 0x26, + 0xe2, 0x95, 0xc1, 0xf4, 0xbe, 0x47, 0x6c, 0x1e, 0x68, 0xbe, 0xc9, 0x7f, 0xcb, 0x77, 0x40, 0x96, + 0x11, 0x65, 0x8a, 0x4b, 0xb2, 0x8c, 0xc8, 0x0d, 0x90, 0x83, 0x36, 0xe9, 0x39, 0x4c, 0x99, 0xe6, + 0x74, 0xac, 0xea, 0xc2, 0xa4, 0x5f, 0xe5, 0xba, 0xa8, 0x72, 0xfd, 0x7d, 0x82, 0x9d, 0xba, 0xea, + 0x53, 0x31, 0xf2, 0x22, 0xd8, 0xa6, 0x05, 0xdc, 0x08, 0x23, 0xb2, 0x0a, 0xe6, 0x28, 0xfa, 0xbc, + 0x87, 0x9c, 0x36, 0x52, 0x66, 0xd6, 0xa5, 0xd2, 0x74, 0x33, 0x5c, 0xcb, 0x2f, 0x81, 0x5c, 0x07, + 0x61, 0xab, 0xc3, 0x94, 0x1c, 0xd7, 0x88, 0x95, 0xbc, 0x06, 0x80, 0x7f, 0xd8, 0x9e, 0x89, 0x1c, + 0x62, 0x2b, 0xb3, 0xdc, 0xb5, 0xbc, 0x2f, 0xb9, 0xe7, 0x0b, 0xe4, 0x35, 0x30, 0x6d, 0x42, 0x06, + 0x95, 0xb9, 0x75, 0xa9, 0x74, 0x8b, 0xe7, 0x43, 0x0a, 0xce, 0xe4, 0xe2, 0x9a, 0x11, 0xcb, 0x44, + 0x31, 0x92, 0x89, 0x24, 0x62, 0xb5, 0xcf, 0x40, 0x31, 0x45, 0x35, 0xcc, 0x8b, 0xfc, 0x2e, 0xc8, + 0x79, 0x88, 0xf6, 0xba, 0x8c, 0x73, 0x7f, 0xa7, 0xfa, 0x6a, 0x42, 0x8d, 0x0c, 0xc1, 0x4d, 0x0e, + 0x7c, 0x34, 0x70, 0x51, 0x53, 0x6c, 0xd2, 0xfe, 0x95, 0x78, 0x79, 0x6f, 0x3b, 0x98, 0x61, 0xc8, + 0x82, 0x23, 0x3e, 0xc6, 0xac, 0x63, 0x7a, 0xf0, 0x0b, 0xd8, 0xfd, 0x1f, 0x97, 0xb1, 0xc4, 0x93, + 0x96, 0xbd, 0x02, 0x7d, 0xf3, 0xe9, 0xac, 0x55, 0x63, 0xe4, 0x6a, 0x11, 0x72, 0x53, 0xc2, 0xd3, + 0xde, 0x03, 0x5a, 0xba, 0x36, 0xa4, 0x38, 0x5a, 0x28, 0xd2, 0x78, 0xa1, 0x68, 0x4f, 0xb2, 0x60, + 0xa1, 0x41, 0xad, 0x4d, 0xd3, 0xfc, 0x08, 0x76, 0xb1, 0x09, 0x19, 0xf1, 0xe4, 0x0f, 0x40, 0x1e, + 0xf6, 0x58, 0x87, 0x78, 0x98, 0x0d, 0x04, 0x6f, 0x6f, 0x5e, 0x9c, 0x14, 0x17, 0x85, 0xf3, 0x43, + 0x55, 0xfa, 0xa5, 0x18, 0x6d, 0x97, 0x15, 0x30, 0x6b, 0x13, 0x07, 0x1f, 0x20, 0x4f, 0x5c, 0x8d, + 0xe1, 0x52, 0xbe, 0x0f, 0x96, 0xfa, 0xc3, 0x23, 0xf7, 0x60, 0xb0, 0x3f, 0xb8, 0x2c, 0x97, 0xf0, + 0xbe, 0x18, 0x6e, 0x11, 0x72, 0x79, 0x0b, 0xe4, 0xdc, 0x5e, 0xeb, 0x00, 0x0d, 0x44, 0x16, 0x12, + 0x5b, 0x67, 0x5d, 0x79, 0x3a, 0xb2, 0xd8, 0xf6, 0x06, 0x2e, 0x23, 0xfa, 0x4e, 0xaf, 0xf5, 0x00, + 0x0d, 0x9a, 0x62, 0x77, 0xad, 0xfa, 0xed, 0xe3, 0x62, 0xe6, 0x9f, 0xc7, 0xc5, 0x8c, 0x9f, 0x86, + 0x51, 0x00, 0x7e, 0x26, 0x56, 0x22, 0x99, 0x88, 0x12, 0xa5, 0xad, 0xf2, 0x96, 0x12, 0x15, 0x85, + 0xed, 0xe6, 0xf7, 0x60, 0x38, 0x34, 0x91, 0x4d, 0xfa, 0xe8, 0xc5, 0x50, 0x9b, 0x48, 0x60, 0xf6, + 0x79, 0x09, 0xac, 0x55, 0x26, 0x03, 0x8e, 0x8e, 0x93, 0x58, 0x04, 0x62, 0x9c, 0xc4, 0xa4, 0x61, + 0xd8, 0xbf, 0x4a, 0xbc, 0x9c, 0x3e, 0x74, 0x4d, 0xc8, 0xd0, 0x0e, 0xf4, 0xa0, 0x4d, 0x6f, 0x34, + 0xe6, 0x0d, 0x90, 0x73, 0xb9, 0x55, 0x31, 0x51, 0x56, 0x13, 0xba, 0x45, 0x70, 0x6c, 0x53, 0x00, + 0x83, 0x59, 0x99, 0x9e, 0xd0, 0xa8, 0xab, 0x22, 0xa1, 0x51, 0xd1, 0x28, 0xb2, 0xe0, 0xa2, 0xec, + 0xba, 0xc8, 0x31, 0xb7, 0x10, 0xda, 0x21, 0xa4, 0x7b, 0xa3, 0x91, 0xbd, 0x03, 0xf2, 0x1e, 0x6a, + 0x63, 0x17, 0x23, 0x87, 0x5d, 0x99, 0xc5, 0x11, 0x54, 0x1e, 0x84, 0x5d, 0x68, 0x8a, 0x3f, 0x1d, + 0x2e, 0xe9, 0x42, 0x5b, 0x89, 0x5d, 0xe8, 0xa7, 0x3f, 0x8b, 0x25, 0x0b, 0xb3, 0x4e, 0xaf, 0xa5, + 0xb7, 0x89, 0x2d, 0x9e, 0x4c, 0xe2, 0x5f, 0x85, 0x9a, 0x07, 0xe2, 0xcd, 0xe3, 0x5b, 0xa0, 0xe3, + 0x1d, 0xeb, 0x0a, 0x66, 0xa3, 0x54, 0x09, 0x66, 0xa3, 0xa2, 0x90, 0xd9, 0x5f, 0xa2, 0x35, 0xf3, + 0xd0, 0x83, 0xed, 0x2e, 0xba, 0x89, 0x89, 0xbc, 0x16, 0x8e, 0x40, 0x9f, 0xcd, 0xe9, 0xfa, 0x8c, + 0x70, 0x3e, 0x9c, 0x84, 0xc1, 0xa8, 0x9b, 0x4a, 0x1e, 0x75, 0xaf, 0xc5, 0xba, 0xf1, 0x64, 0xc9, + 0x04, 0x9e, 0x8e, 0x95, 0x4c, 0x20, 0x1a, 0x06, 0x56, 0x7d, 0x32, 0x0b, 0xa6, 0x1a, 0xd4, 0x92, + 0x2d, 0xb0, 0x10, 0x7f, 0x24, 0x26, 0x4d, 0xb9, 0xc9, 0x57, 0x9a, 0x5a, 0xb9, 0x16, 0x2c, 0x6c, + 0xf4, 0x10, 0xdc, 0x1e, 0x7f, 0xc8, 0xbd, 0x92, 0xbc, 0x7f, 0x0c, 0xa4, 0xbe, 0x71, 0x0d, 0x50, + 0x78, 0x44, 0x1f, 0x2c, 0x27, 0x3e, 0xa1, 0xca, 0xc9, 0x46, 0x92, 0xb0, 0x6a, 0xf5, 0xfa, 0xd8, + 0xf0, 0xdc, 0xaf, 0xc0, 0x4a, 0xda, 0x8c, 0x4f, 0x21, 0x29, 0x05, 0xae, 0xbe, 0xfd, 0x5c, 0xf0, + 0xd0, 0x81, 0x4f, 0xc1, 0xad, 0xb1, 0x21, 0xa9, 0x25, 0x9b, 0x89, 0x62, 0xd4, 0xf2, 0xd5, 0x98, + 0xd0, 0xbe, 0x05, 0x16, 0xe2, 0xc3, 0x22, 0xa5, 0x48, 0x62, 0xb0, 0xb4, 0x22, 0x49, 0x69, 0xd1, + 0x7e, 0x20, 0x63, 0xed, 0x39, 0x25, 0x90, 0x28, 0x26, 0x2d, 0x90, 0xa4, 0x46, 0xe9, 0xdb, 0x1f, + 0x6b, 0x92, 0x29, 0xf6, 0xa3, 0x98, 0x34, 0xfb, 0x49, 0xed, 0x62, 0xe4, 0xbf, 0x68, 0x15, 0x97, + 0xfa, 0x1f, 0x60, 0x2e, 0xf7, 0x7f, 0xfc, 0xd6, 0xaa, 0x33, 0x5f, 0xfb, 0x6d, 0xa0, 0xfe, 0xe0, + 0xf8, 0xef, 0x42, 0xe6, 0xf8, 0xb4, 0x20, 0x3d, 0x3b, 0x2d, 0x48, 0x7f, 0x9d, 0x16, 0xa4, 0xef, + 0xcf, 0x0a, 0x99, 0x67, 0x67, 0x85, 0xcc, 0x1f, 0x67, 0x85, 0xcc, 0x27, 0x95, 0x48, 0xc7, 0xc4, + 0xbc, 0x72, 0x2a, 0x5d, 0xd8, 0xa2, 0xc6, 0xc3, 0x1d, 0xfe, 0xc5, 0x78, 0x18, 0x7e, 0x33, 0xf2, + 0xe6, 0xd9, 0xca, 0xf1, 0xc7, 0xc8, 0x5b, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0x99, 0xc9, 0x6a, + 0x7b, 0x19, 0x0f, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/x/opchild/types/types.pb.go b/x/opchild/types/types.pb.go index bfcc7215..2dbe9061 100644 --- a/x/opchild/types/types.pb.go +++ b/x/opchild/types/types.pb.go @@ -4,7 +4,6 @@ package types import ( - bytes "bytes" fmt "fmt" types2 "github.com/cometbft/cometbft/abci/types" _ "github.com/cosmos/cosmos-proto" @@ -14,20 +13,16 @@ import ( _ "github.com/cosmos/cosmos-sdk/types/tx/amino" _ "github.com/cosmos/gogoproto/gogoproto" proto "github.com/cosmos/gogoproto/proto" - github_com_cosmos_gogoproto_types "github.com/cosmos/gogoproto/types" types3 "github.com/initia-labs/OPinit/x/ophost/types" - _ "google.golang.org/protobuf/types/known/timestamppb" io "io" math "math" math_bits "math/bits" - time "time" ) // Reference imports to suppress errors if they are not otherwise used. var _ = proto.Marshal var _ = fmt.Errorf var _ = math.Inf -var _ = time.Kitchen // This is a compile-time assertion to ensure that this generated file // is compatible with the proto package it is being compiled against. @@ -254,47 +249,6 @@ func (m *BridgeInfo) XXX_DiscardUnknown() { var xxx_messageInfo_BridgeInfo proto.InternalMessageInfo -// PendingDeposits defines the set of pending deposits. -type PendingDeposits struct { - // recipient is the address of the recipient. - Recipient string `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"` - // coins is a list of coins to be deposited. - Coins github_com_cosmos_cosmos_sdk_types.Coins `protobuf:"bytes,2,rep,name=coins,proto3,castrepeated=github.com/cosmos/cosmos-sdk/types.Coins" json:"coins"` -} - -func (m *PendingDeposits) Reset() { *m = PendingDeposits{} } -func (m *PendingDeposits) String() string { return proto.CompactTextString(m) } -func (*PendingDeposits) ProtoMessage() {} -func (*PendingDeposits) Descriptor() ([]byte, []int) { - return fileDescriptor_2cc6df244b706d68, []int{4} -} -func (m *PendingDeposits) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *PendingDeposits) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_PendingDeposits.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *PendingDeposits) XXX_Merge(src proto.Message) { - xxx_messageInfo_PendingDeposits.Merge(m, src) -} -func (m *PendingDeposits) XXX_Size() int { - return m.Size() -} -func (m *PendingDeposits) XXX_DiscardUnknown() { - xxx_messageInfo_PendingDeposits.DiscardUnknown(m) -} - -var xxx_messageInfo_PendingDeposits proto.InternalMessageInfo - // CoinsWrapper defines the set of coins. type CoinsWrapper struct { Coins github_com_cosmos_cosmos_sdk_types.Coins `protobuf:"bytes,1,rep,name=coins,proto3,castrepeated=github.com/cosmos/cosmos-sdk/types.Coins" json:"coins"` @@ -304,7 +258,7 @@ func (m *CoinsWrapper) Reset() { *m = CoinsWrapper{} } func (m *CoinsWrapper) String() string { return proto.CompactTextString(m) } func (*CoinsWrapper) ProtoMessage() {} func (*CoinsWrapper) Descriptor() ([]byte, []int) { - return fileDescriptor_2cc6df244b706d68, []int{5} + return fileDescriptor_2cc6df244b706d68, []int{4} } func (m *CoinsWrapper) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -333,132 +287,84 @@ func (m *CoinsWrapper) XXX_DiscardUnknown() { var xxx_messageInfo_CoinsWrapper proto.InternalMessageInfo -type WithdrawalCommitment struct { - Commitment []byte `protobuf:"bytes,1,opt,name=commitment,proto3" json:"commitment,omitempty"` - SubmitTime time.Time `protobuf:"bytes,5,opt,name=submit_time,json=submitTime,proto3,stdtime" json:"submit_time"` -} - -func (m *WithdrawalCommitment) Reset() { *m = WithdrawalCommitment{} } -func (m *WithdrawalCommitment) String() string { return proto.CompactTextString(m) } -func (*WithdrawalCommitment) ProtoMessage() {} -func (*WithdrawalCommitment) Descriptor() ([]byte, []int) { - return fileDescriptor_2cc6df244b706d68, []int{6} -} -func (m *WithdrawalCommitment) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *WithdrawalCommitment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_WithdrawalCommitment.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *WithdrawalCommitment) XXX_Merge(src proto.Message) { - xxx_messageInfo_WithdrawalCommitment.Merge(m, src) -} -func (m *WithdrawalCommitment) XXX_Size() int { - return m.Size() -} -func (m *WithdrawalCommitment) XXX_DiscardUnknown() { - xxx_messageInfo_WithdrawalCommitment.DiscardUnknown(m) -} - -var xxx_messageInfo_WithdrawalCommitment proto.InternalMessageInfo - func init() { proto.RegisterEnum("opinit.opchild.v1.ResponseResultType", ResponseResultType_name, ResponseResultType_value) proto.RegisterType((*Params)(nil), "opinit.opchild.v1.Params") proto.RegisterType((*Validator)(nil), "opinit.opchild.v1.Validator") proto.RegisterType((*ValidatorUpdates)(nil), "opinit.opchild.v1.ValidatorUpdates") proto.RegisterType((*BridgeInfo)(nil), "opinit.opchild.v1.BridgeInfo") - proto.RegisterType((*PendingDeposits)(nil), "opinit.opchild.v1.PendingDeposits") proto.RegisterType((*CoinsWrapper)(nil), "opinit.opchild.v1.CoinsWrapper") - proto.RegisterType((*WithdrawalCommitment)(nil), "opinit.opchild.v1.WithdrawalCommitment") } func init() { proto.RegisterFile("opinit/opchild/v1/types.proto", fileDescriptor_2cc6df244b706d68) } var fileDescriptor_2cc6df244b706d68 = []byte{ - // 1156 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xbf, 0x6f, 0xdb, 0x46, - 0x14, 0x16, 0x63, 0xe5, 0x87, 0x4e, 0xb2, 0x2d, 0x1f, 0x1c, 0x54, 0x96, 0x13, 0x52, 0xe0, 0x52, - 0x21, 0xad, 0x29, 0x28, 0x69, 0x8a, 0xd6, 0x53, 0x43, 0x45, 0x29, 0xdc, 0x04, 0xb6, 0x40, 0xd9, - 0x0d, 0x9a, 0x85, 0x38, 0x92, 0x67, 0xe9, 0x10, 0x92, 0x47, 0xf0, 0x4e, 0x8e, 0xb5, 0x76, 0x0a, - 0xbc, 0x34, 0x63, 0x97, 0x00, 0x01, 0xba, 0xa4, 0x99, 0x52, 0xa0, 0x5b, 0xff, 0x81, 0xa0, 0x40, - 0x81, 0xa0, 0x53, 0x27, 0xa5, 0x75, 0x86, 0x74, 0xd6, 0xd0, 0xb9, 0xb8, 0xe3, 0xe9, 0x47, 0x9c, - 0x04, 0xe9, 0xd2, 0xc5, 0xbe, 0x7b, 0xdf, 0xf7, 0xde, 0xbb, 0xfb, 0xde, 0x7b, 0x47, 0x81, 0x8b, - 0x34, 0x21, 0x31, 0xe1, 0x0d, 0x9a, 0xf8, 0x7d, 0x12, 0x06, 0x8d, 0x83, 0x66, 0x83, 0x0f, 0x13, - 0xcc, 0xac, 0x24, 0xa5, 0x9c, 0xc2, 0x95, 0x0c, 0xb6, 0x14, 0x6c, 0x1d, 0x34, 0xab, 0x2b, 0x28, - 0x22, 0x31, 0x6d, 0xc8, 0xbf, 0x19, 0xab, 0xaa, 0xfb, 0x94, 0x45, 0x94, 0x35, 0x3c, 0xc4, 0x70, - 0xe3, 0xa0, 0xe9, 0x61, 0x8e, 0x9a, 0x0d, 0x9f, 0x92, 0x58, 0xe1, 0x6b, 0x19, 0xee, 0xca, 0x5d, - 0x23, 0xdb, 0x28, 0x68, 0xb5, 0x47, 0x7b, 0x34, 0xb3, 0x8b, 0xd5, 0xc4, 0xa1, 0x47, 0x69, 0x2f, - 0xc4, 0x0d, 0xb9, 0xf3, 0x06, 0xfb, 0x0d, 0x14, 0x0f, 0x15, 0x64, 0x9c, 0x84, 0x38, 0x89, 0x30, - 0xe3, 0x28, 0x4a, 0x14, 0xe1, 0xc2, 0xf4, 0x46, 0x7d, 0xca, 0xf8, 0x89, 0x0b, 0x55, 0xd7, 0x39, - 0x8e, 0x03, 0x9c, 0x46, 0x24, 0xe6, 0x0d, 0xe4, 0xf9, 0x64, 0x1e, 0x34, 0x7f, 0xcb, 0x83, 0x33, - 0x1d, 0x94, 0xa2, 0x88, 0xc1, 0x2f, 0xc0, 0x52, 0x84, 0x0e, 0xdd, 0x03, 0x14, 0x92, 0x00, 0x71, - 0x9a, 0xb2, 0x8a, 0x56, 0xd3, 0xea, 0x8b, 0xf6, 0xda, 0x78, 0x64, 0x9c, 0x1f, 0xa2, 0x28, 0xdc, - 0x34, 0x5f, 0xc7, 0x4d, 0x67, 0x31, 0x42, 0x87, 0x5f, 0x4f, 0xf7, 0xf0, 0x16, 0x80, 0x7d, 0xc2, - 0x38, 0x4d, 0x89, 0x8f, 0x42, 0x17, 0xc7, 0x3c, 0x25, 0x98, 0x55, 0x4e, 0xc9, 0x28, 0x17, 0xc7, - 0x23, 0x63, 0x2d, 0x8b, 0xf2, 0x26, 0xc7, 0x74, 0x56, 0x66, 0xc6, 0x76, 0x66, 0x83, 0xdf, 0x69, - 0x60, 0x29, 0x22, 0xb1, 0xdb, 0x43, 0x42, 0x46, 0xe2, 0x63, 0x56, 0x59, 0xa8, 0x2d, 0xd4, 0x8b, - 0x97, 0x2f, 0x58, 0x4a, 0x4f, 0x21, 0xbe, 0xa5, 0xc4, 0xb7, 0xae, 0x63, 0xbf, 0x45, 0x49, 0x6c, - 0xdf, 0x7c, 0x36, 0x32, 0x72, 0xe3, 0x91, 0xb1, 0xaa, 0x8e, 0x3c, 0x1f, 0xc1, 0x7c, 0xf2, 0xc2, - 0xf8, 0xa8, 0x47, 0x78, 0x7f, 0xe0, 0x59, 0x3e, 0x8d, 0x54, 0x5d, 0xd4, 0xbf, 0x0d, 0x16, 0xdc, - 0x55, 0xda, 0xa8, 0x58, 0xcc, 0x29, 0x45, 0x24, 0xfe, 0x12, 0xb1, 0x8e, 0x4c, 0x0f, 0x7d, 0x50, - 0xf6, 0x52, 0x12, 0xf4, 0xb0, 0x8b, 0x0f, 0xb1, 0x3f, 0x90, 0x1a, 0xe5, 0x6b, 0x0b, 0xf5, 0x82, - 0xfd, 0xd9, 0x78, 0x64, 0x7c, 0x90, 0x25, 0x3c, 0xc9, 0x30, 0x7f, 0xff, 0x79, 0x63, 0x55, 0x1d, - 0xf8, 0x5a, 0x10, 0xa4, 0x98, 0xb1, 0x2e, 0x4f, 0x49, 0xdc, 0x7b, 0xfc, 0xea, 0xe9, 0x25, 0xcd, - 0x59, 0xce, 0xf8, 0xed, 0x09, 0x1d, 0xb6, 0xc0, 0x69, 0x14, 0x44, 0x24, 0xae, 0x9c, 0xae, 0x69, - 0xf5, 0x82, 0xbd, 0x31, 0x1e, 0x19, 0xa5, 0x2c, 0xb2, 0x34, 0xbf, 0x27, 0x5c, 0xe6, 0x0b, 0xef, - 0x80, 0xc5, 0x7d, 0x8c, 0xdd, 0x7b, 0x7d, 0xc2, 0x71, 0x48, 0x18, 0xaf, 0x9c, 0x91, 0xc7, 0xbc, - 0x3a, 0xd3, 0xe5, 0x35, 0xf8, 0x3d, 0x41, 0x4b, 0xfb, 0x18, 0xdf, 0x9e, 0x70, 0x37, 0xd7, 0xbf, - 0x7f, 0x64, 0xe4, 0xfe, 0x7e, 0x64, 0x68, 0x47, 0xaf, 0x9e, 0x5e, 0x5a, 0x9a, 0x4c, 0x51, 0xd6, - 0x44, 0xe6, 0x2f, 0xa7, 0x40, 0x61, 0xda, 0x11, 0xf0, 0x63, 0x70, 0x36, 0xa2, 0x31, 0xb9, 0x8b, - 0x53, 0xd9, 0x4b, 0x05, 0x1b, 0x8e, 0x47, 0xc6, 0x92, 0x2a, 0x4c, 0x06, 0x98, 0xce, 0x84, 0x02, - 0x6f, 0x80, 0x32, 0x4d, 0x70, 0x2a, 0x3c, 0x5d, 0x94, 0x9d, 0x42, 0x36, 0x4f, 0xc1, 0x5e, 0x9f, - 0xc9, 0x7b, 0x92, 0x61, 0x3a, 0xcb, 0x13, 0x93, 0x3a, 0x39, 0xe4, 0xa0, 0xec, 0xd3, 0x98, 0xe1, - 0x98, 0x0d, 0x98, 0x9b, 0x0c, 0xbc, 0xbb, 0x78, 0x58, 0x59, 0xa8, 0x69, 0xf5, 0xe2, 0xe5, 0x55, - 0x2b, 0x1b, 0x25, 0x6b, 0x32, 0x4a, 0xd6, 0xb5, 0x78, 0x68, 0x5f, 0x99, 0x45, 0x3f, 0xe9, 0x67, - 0xfe, 0x3a, 0x13, 0xc6, 0x4f, 0x87, 0x09, 0xa7, 0x56, 0x67, 0xe0, 0xdd, 0xc4, 0x43, 0x67, 0x79, - 0x4a, 0xed, 0x48, 0x26, 0xfc, 0x04, 0x00, 0x61, 0x72, 0x13, 0x7a, 0x0f, 0xa7, 0x95, 0x7c, 0x4d, - 0xab, 0x2f, 0xd8, 0xe7, 0xc7, 0x23, 0x63, 0x65, 0x16, 0x39, 0xc3, 0x4c, 0xa7, 0x20, 0x36, 0x1d, - 0xb1, 0xde, 0x2c, 0xdd, 0x7f, 0x64, 0xe4, 0x94, 0xa0, 0x39, 0xd3, 0x05, 0xe5, 0xa9, 0x78, 0x7b, - 0x49, 0x80, 0x38, 0x66, 0xb0, 0x0d, 0xce, 0x0e, 0xb2, 0x65, 0x45, 0x93, 0xed, 0x5f, 0xb3, 0x66, - 0x03, 0x6d, 0x89, 0x81, 0xb6, 0x4e, 0xf8, 0xd8, 0x05, 0x31, 0x02, 0x59, 0xe9, 0x26, 0xbe, 0x9b, - 0x79, 0x99, 0xe0, 0x1f, 0x0d, 0x00, 0x5b, 0x36, 0xdc, 0x56, 0xbc, 0x4f, 0xe1, 0x3a, 0x28, 0xa8, - 0x76, 0x25, 0x81, 0xac, 0x50, 0xde, 0x39, 0x97, 0x19, 0xb6, 0x02, 0xf8, 0x39, 0x28, 0x2a, 0x50, - 0x48, 0xad, 0x2a, 0x51, 0x79, 0x57, 0xa7, 0x38, 0x20, 0x23, 0x0b, 0x23, 0xd4, 0x41, 0x31, 0x6c, - 0xba, 0x7e, 0x1f, 0x91, 0x58, 0x44, 0x16, 0xe2, 0x17, 0x9c, 0x42, 0xd8, 0x6c, 0x09, 0xcb, 0x56, - 0x00, 0x6b, 0xa0, 0x24, 0xf0, 0x90, 0xe0, 0x98, 0x0b, 0x42, 0x5e, 0x12, 0x40, 0xd8, 0x6c, 0x49, - 0xd3, 0x56, 0x00, 0xb7, 0xc1, 0xa2, 0x4a, 0xee, 0xd3, 0x78, 0x9f, 0xf4, 0xe4, 0x34, 0x14, 0x2f, - 0xeb, 0xd6, 0xf4, 0x75, 0x16, 0x4f, 0x9d, 0x75, 0xd0, 0xb4, 0xb2, 0xeb, 0xb4, 0x24, 0x6b, 0xfe, - 0xe6, 0x25, 0x6f, 0x0e, 0x30, 0x7f, 0xd2, 0xc0, 0x72, 0x07, 0xc7, 0x01, 0x89, 0x7b, 0xd7, 0x71, - 0x42, 0x19, 0xe1, 0x0c, 0x7e, 0x0a, 0x0a, 0x29, 0xf6, 0x49, 0x22, 0x52, 0xaa, 0xfe, 0x7c, 0xf7, - 0xf5, 0x66, 0x54, 0xb8, 0x0f, 0x4e, 0x8b, 0x97, 0x5e, 0x34, 0xa7, 0xa8, 0xc7, 0xda, 0x5b, 0x9f, - 0x23, 0xf9, 0x16, 0x5d, 0x15, 0xc7, 0x79, 0xf2, 0xc2, 0xa8, 0xff, 0x87, 0x37, 0x47, 0x3e, 0x38, - 0x6a, 0x88, 0x65, 0x78, 0xf3, 0x00, 0x94, 0xa4, 0xf1, 0x76, 0x8a, 0x92, 0x04, 0xa7, 0xb3, 0xbc, - 0xda, 0xff, 0x9b, 0xf7, 0x5b, 0x0d, 0xac, 0xde, 0x26, 0xbc, 0x1f, 0xa4, 0xe8, 0x1e, 0x0a, 0x5b, - 0x34, 0x8a, 0x08, 0x8f, 0xc4, 0xc5, 0x75, 0xd1, 0xe2, 0x93, 0x9d, 0x54, 0xac, 0xe4, 0xcc, 0x59, - 0xe0, 0x57, 0xa0, 0xc8, 0x06, 0x5e, 0x44, 0xb8, 0x2b, 0xbe, 0x50, 0xaa, 0x64, 0xd5, 0x37, 0x66, - 0x6e, 0x77, 0xf2, 0xf9, 0xb2, 0x17, 0xc5, 0x39, 0x1f, 0xbc, 0x30, 0xb4, 0x2c, 0x3f, 0xc8, 0xbc, - 0x05, 0x7e, 0xe9, 0x47, 0x0d, 0x40, 0x07, 0xb3, 0x44, 0x4c, 0x99, 0x83, 0xd9, 0x20, 0xe4, 0xbb, - 0xc3, 0x04, 0xc3, 0xab, 0xa0, 0xe6, 0xb4, 0xbb, 0x9d, 0x9d, 0xed, 0x6e, 0xdb, 0x75, 0xda, 0xdd, - 0xbd, 0x5b, 0xbb, 0xee, 0xee, 0x37, 0x9d, 0xb6, 0xbb, 0xb7, 0xdd, 0xed, 0xb4, 0x5b, 0x5b, 0x37, - 0xb6, 0xda, 0xd7, 0xcb, 0xb9, 0xea, 0xf2, 0xd1, 0xc3, 0x5a, 0x71, 0xce, 0x04, 0x3f, 0x04, 0x6b, - 0x6f, 0x75, 0xdb, 0xde, 0xd9, 0xe9, 0x94, 0xb5, 0xea, 0xb9, 0xa3, 0x87, 0xb5, 0xbc, 0x58, 0xc3, - 0x0d, 0x70, 0xe1, 0xad, 0xc4, 0xee, 0x5e, 0xab, 0xd5, 0xee, 0x76, 0xcb, 0xa7, 0xaa, 0xc5, 0xa3, - 0x87, 0xb5, 0xb3, 0x6a, 0x5b, 0xcd, 0xdf, 0xff, 0x41, 0xcf, 0xd9, 0x3b, 0xcf, 0xfe, 0xd2, 0x73, - 0x8f, 0x8f, 0x75, 0xed, 0xd9, 0xb1, 0xae, 0x3d, 0x3f, 0xd6, 0xb5, 0x3f, 0x8f, 0x75, 0xed, 0xc1, - 0x4b, 0x3d, 0xf7, 0xfc, 0xa5, 0x9e, 0xfb, 0xe3, 0xa5, 0x9e, 0xbb, 0xb3, 0x31, 0x57, 0x08, 0xd1, - 0xbf, 0x04, 0x6d, 0x84, 0xc8, 0x63, 0x8d, 0x9d, 0x8e, 0xfc, 0x70, 0x1f, 0x4e, 0x7f, 0x8c, 0xc8, - 0x9a, 0x78, 0x67, 0xa4, 0x56, 0x57, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x9f, 0xf5, 0x5f, 0xd8, - 0xab, 0x08, 0x00, 0x00, + // 1040 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xbf, 0x6f, 0xdb, 0x46, + 0x14, 0x16, 0x63, 0xc5, 0x8e, 0x4e, 0xb2, 0x2d, 0x1f, 0x1c, 0x54, 0x96, 0x1d, 0x92, 0xe0, 0x52, + 0xc1, 0xad, 0x48, 0xc8, 0xa9, 0x81, 0xd6, 0x53, 0x23, 0x45, 0x29, 0x84, 0x04, 0xb6, 0x40, 0xd9, + 0x0d, 0x9a, 0x85, 0x38, 0x91, 0x27, 0xe9, 0x60, 0x92, 0x47, 0xf0, 0x28, 0xc5, 0xfa, 0x0f, 0x02, + 0x2f, 0xed, 0xd8, 0xc5, 0x80, 0x81, 0x2e, 0x69, 0xa6, 0x0c, 0xdd, 0xfa, 0x0f, 0x18, 0x05, 0x0a, + 0x04, 0x9d, 0x3a, 0x29, 0xad, 0x3d, 0xa4, 0xb3, 0x86, 0xce, 0xc5, 0x1d, 0xa9, 0x1f, 0x71, 0x5d, + 0xa4, 0x8b, 0x7d, 0xf7, 0xbe, 0xef, 0x7d, 0xf7, 0xf4, 0xdd, 0x7b, 0x47, 0x70, 0x8f, 0x06, 0xc4, + 0x27, 0x91, 0x41, 0x03, 0xbb, 0x47, 0x5c, 0xc7, 0x18, 0x54, 0x8c, 0x68, 0x18, 0x60, 0xa6, 0x07, + 0x21, 0x8d, 0x28, 0x5c, 0x8b, 0x61, 0x3d, 0x81, 0xf5, 0x41, 0xa5, 0xb8, 0x86, 0x3c, 0xe2, 0x53, + 0x43, 0xfc, 0x8d, 0x59, 0x45, 0xd9, 0xa6, 0xcc, 0xa3, 0xcc, 0x68, 0x23, 0x86, 0x8d, 0x41, 0xa5, + 0x8d, 0x23, 0x54, 0x31, 0x6c, 0x4a, 0xfc, 0x04, 0xdf, 0x88, 0x71, 0x4b, 0xec, 0x8c, 0x78, 0x93, + 0x40, 0xeb, 0x5d, 0xda, 0xa5, 0x71, 0x9c, 0xaf, 0x26, 0x09, 0x5d, 0x4a, 0xbb, 0x2e, 0x36, 0xc4, + 0xae, 0xdd, 0xef, 0x18, 0xc8, 0x1f, 0x26, 0xd0, 0xd6, 0xb4, 0xe0, 0x1e, 0x65, 0xd1, 0xb5, 0x7a, + 0x8b, 0x9b, 0x11, 0xf6, 0x1d, 0x1c, 0x7a, 0xc4, 0x8f, 0x0c, 0xd4, 0xb6, 0xc9, 0x3c, 0xa8, 0xfd, + 0x9a, 0x06, 0x8b, 0x4d, 0x14, 0x22, 0x8f, 0xc1, 0x2f, 0xc1, 0x8a, 0x87, 0x4e, 0xac, 0x01, 0x72, + 0x89, 0x83, 0x22, 0x1a, 0xb2, 0x82, 0xa4, 0x4a, 0xa5, 0xe5, 0xea, 0xc6, 0x78, 0xa4, 0xdc, 0x1d, + 0x22, 0xcf, 0xdd, 0xd3, 0xde, 0xc7, 0x35, 0x73, 0xd9, 0x43, 0x27, 0x5f, 0x4f, 0xf7, 0xf0, 0x09, + 0x80, 0x3d, 0xc2, 0x22, 0x1a, 0x12, 0x1b, 0xb9, 0x16, 0xf6, 0xa3, 0x90, 0x60, 0x56, 0xb8, 0x25, + 0x54, 0xee, 0x8d, 0x47, 0xca, 0x46, 0xac, 0xf2, 0x6f, 0x8e, 0x66, 0xae, 0xcd, 0x82, 0xf5, 0x38, + 0x06, 0xbf, 0x95, 0xc0, 0x8a, 0x47, 0x7c, 0xab, 0x8b, 0xb8, 0x4b, 0xc4, 0xc6, 0xac, 0xb0, 0xa0, + 0x2e, 0x94, 0xb2, 0x3b, 0x5b, 0x7a, 0x62, 0x17, 0xf7, 0x56, 0x4f, 0xbc, 0xd5, 0x1f, 0x62, 0xbb, + 0x46, 0x89, 0x5f, 0x7d, 0x7c, 0x31, 0x52, 0x52, 0xe3, 0x91, 0xb2, 0x9e, 0x94, 0x3c, 0xaf, 0xa0, + 0xbd, 0x7a, 0xab, 0x7c, 0xd2, 0x25, 0x51, 0xaf, 0xdf, 0xd6, 0x6d, 0xea, 0x25, 0xb6, 0x27, 0xff, + 0xca, 0xcc, 0x39, 0x4e, 0xbc, 0x49, 0xb4, 0x98, 0x99, 0xf3, 0x88, 0xff, 0x15, 0x62, 0x4d, 0x71, + 0x3c, 0xb4, 0x41, 0xbe, 0x1d, 0x12, 0xa7, 0x8b, 0x2d, 0x7c, 0x82, 0xed, 0xbe, 0xf0, 0x28, 0xad, + 0x2e, 0x94, 0x32, 0xd5, 0xcf, 0xc7, 0x23, 0xe5, 0xa3, 0xf8, 0xc0, 0xeb, 0x0c, 0xed, 0xb7, 0x9f, + 0xca, 0xeb, 0x49, 0xc1, 0x0f, 0x1c, 0x27, 0xc4, 0x8c, 0xb5, 0xa2, 0x90, 0xf8, 0xdd, 0x97, 0xef, + 0x5e, 0x6f, 0x4b, 0xe6, 0x6a, 0xcc, 0xaf, 0x4f, 0xe8, 0xb0, 0x06, 0x6e, 0x23, 0xc7, 0x23, 0x7e, + 0xe1, 0xb6, 0x2a, 0x95, 0x32, 0xd5, 0xf2, 0x78, 0xa4, 0xe4, 0x62, 0x65, 0x11, 0xfe, 0x80, 0x5c, + 0x9c, 0x0b, 0x9f, 0x81, 0xe5, 0x0e, 0xc6, 0xd6, 0xf3, 0x1e, 0x89, 0xb0, 0x4b, 0x58, 0x54, 0x58, + 0x14, 0x65, 0xee, 0xce, 0x7c, 0x79, 0x0f, 0xfe, 0x80, 0x68, 0xae, 0x83, 0xf1, 0xd3, 0x09, 0x77, + 0x6f, 0xf3, 0xfb, 0x73, 0x25, 0xf5, 0xd7, 0xb9, 0x22, 0x9d, 0xbe, 0x7b, 0xbd, 0xbd, 0x32, 0x19, + 0x92, 0xb8, 0x89, 0xb4, 0x9f, 0x6f, 0x81, 0xcc, 0xb4, 0x23, 0xe0, 0xa7, 0x60, 0xc9, 0xa3, 0x3e, + 0x39, 0xc6, 0xa1, 0xe8, 0xa5, 0x4c, 0x15, 0x8e, 0x47, 0xca, 0x4a, 0x72, 0x31, 0x31, 0xa0, 0x99, + 0x13, 0x0a, 0x7c, 0x04, 0xf2, 0x34, 0xc0, 0x21, 0xcf, 0xb4, 0x50, 0x5c, 0x85, 0x68, 0x9e, 0x4c, + 0x75, 0x73, 0x66, 0xef, 0x75, 0x86, 0x66, 0xae, 0x4e, 0x42, 0x49, 0xe5, 0x30, 0x02, 0x79, 0x9b, + 0xfa, 0x0c, 0xfb, 0xac, 0xcf, 0xac, 0xa0, 0xdf, 0x3e, 0xc6, 0xc3, 0xc2, 0x82, 0x2a, 0x95, 0xb2, + 0x3b, 0xeb, 0x7a, 0x3c, 0x44, 0xfa, 0x64, 0x88, 0xf4, 0x07, 0xfe, 0xb0, 0x7a, 0x7f, 0xa6, 0x7e, + 0x3d, 0x4f, 0xfb, 0x65, 0x66, 0x8c, 0x1d, 0x0e, 0x83, 0x88, 0xea, 0xcd, 0x7e, 0xfb, 0x31, 0x1e, + 0x9a, 0xab, 0x53, 0x6a, 0x53, 0x30, 0xe1, 0x67, 0x00, 0xf0, 0x90, 0x15, 0xd0, 0xe7, 0x38, 0x2c, + 0xa4, 0x55, 0xa9, 0xb4, 0x50, 0xbd, 0x3b, 0x1e, 0x29, 0x6b, 0x33, 0xe5, 0x18, 0xd3, 0xcc, 0x0c, + 0xdf, 0x34, 0xf9, 0x7a, 0x2f, 0xf7, 0xe2, 0x5c, 0x49, 0x25, 0x86, 0xa6, 0x34, 0x0b, 0xe4, 0xa7, + 0xe6, 0x1d, 0x05, 0x0e, 0x8a, 0x30, 0x83, 0x75, 0xb0, 0xd4, 0x8f, 0x97, 0x05, 0x49, 0xb4, 0xbf, + 0xaa, 0xcf, 0x06, 0x5a, 0xe7, 0x03, 0xad, 0x5f, 0xcb, 0xa9, 0x66, 0xf8, 0x08, 0xc4, 0x57, 0x37, + 0xc9, 0xdd, 0x4b, 0x8b, 0x03, 0xfe, 0x96, 0x00, 0xa8, 0x8a, 0x86, 0x6b, 0xf8, 0x1d, 0x0a, 0x37, + 0x41, 0x26, 0x69, 0x57, 0xe2, 0x88, 0x1b, 0x4a, 0x9b, 0x77, 0xe2, 0x40, 0xc3, 0x81, 0x5f, 0x80, + 0x6c, 0x02, 0x72, 0xab, 0x93, 0x9b, 0x28, 0xfc, 0x57, 0xa7, 0x98, 0x20, 0x26, 0xf3, 0x20, 0x94, + 0x41, 0xd6, 0xad, 0x58, 0x76, 0x0f, 0x11, 0x9f, 0x2b, 0x73, 0xf3, 0x33, 0x66, 0xc6, 0xad, 0xd4, + 0x78, 0xa4, 0xe1, 0x40, 0x15, 0xe4, 0x38, 0xee, 0x12, 0xec, 0x47, 0x9c, 0x90, 0x16, 0x04, 0xe0, + 0x56, 0x6a, 0x22, 0xd4, 0x70, 0xe0, 0x3e, 0x58, 0x4e, 0x0e, 0xb7, 0xa9, 0xdf, 0x21, 0x5d, 0x31, + 0x0d, 0xd9, 0x1d, 0x59, 0x9f, 0x3e, 0xbe, 0xfc, 0xa9, 0xd3, 0x07, 0x15, 0x3d, 0xfe, 0x39, 0x35, + 0xc1, 0x9a, 0xff, 0xe5, 0xb9, 0xf6, 0x1c, 0xa0, 0x0d, 0x40, 0x4e, 0x4c, 0xf4, 0xd3, 0x10, 0x05, + 0x01, 0x0e, 0x61, 0x07, 0xdc, 0xe6, 0x8f, 0xf1, 0xc4, 0xd3, 0x8d, 0x1b, 0x9f, 0x14, 0xf1, 0x9e, + 0xec, 0x72, 0xc9, 0x57, 0x6f, 0x95, 0xd2, 0xff, 0x78, 0x37, 0xc4, 0x11, 0xc9, 0x20, 0x0a, 0xf9, + 0xed, 0x1f, 0x25, 0x00, 0x4d, 0xcc, 0x02, 0xde, 0x2c, 0x26, 0x66, 0x7d, 0x37, 0x3a, 0x1c, 0x06, + 0x18, 0xee, 0x02, 0xd5, 0xac, 0xb7, 0x9a, 0x07, 0xfb, 0xad, 0xba, 0x65, 0xd6, 0x5b, 0x47, 0x4f, + 0x0e, 0xad, 0xc3, 0x6f, 0x9a, 0x75, 0xeb, 0x68, 0xbf, 0xd5, 0xac, 0xd7, 0x1a, 0x8f, 0x1a, 0xf5, + 0x87, 0xf9, 0x54, 0x71, 0xf5, 0xf4, 0x4c, 0xcd, 0xce, 0x85, 0xe0, 0xc7, 0x60, 0xe3, 0xc6, 0xb4, + 0xfd, 0x83, 0x83, 0x66, 0x5e, 0x2a, 0xde, 0x39, 0x3d, 0x53, 0xd3, 0x7c, 0x0d, 0xcb, 0x60, 0xeb, + 0x46, 0x62, 0xeb, 0xa8, 0x56, 0xab, 0xb7, 0x5a, 0xf9, 0x5b, 0xc5, 0xec, 0xe9, 0x99, 0xba, 0x94, + 0x6c, 0x8b, 0xe9, 0x17, 0x3f, 0xc8, 0xa9, 0xea, 0xc1, 0xc5, 0x9f, 0x72, 0xea, 0xe5, 0xa5, 0x2c, + 0x5d, 0x5c, 0xca, 0xd2, 0x9b, 0x4b, 0x59, 0xfa, 0xe3, 0x52, 0x96, 0xbe, 0xbb, 0x92, 0x53, 0x6f, + 0xae, 0xe4, 0xd4, 0xef, 0x57, 0x72, 0xea, 0x59, 0x79, 0xce, 0x03, 0x7e, 0x0d, 0x04, 0x95, 0x5d, + 0xd4, 0x66, 0xc6, 0x41, 0x53, 0x7c, 0x7f, 0x4e, 0xa6, 0x9f, 0x4c, 0x61, 0x47, 0x7b, 0x51, 0x8c, + 0xd9, 0xfd, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x2d, 0x89, 0xf2, 0x29, 0x51, 0x07, 0x00, 0x00, } func (this *Params) Equal(that interface{}) bool { @@ -551,38 +457,6 @@ func (this *BridgeInfo) Equal(that interface{}) bool { } return true } -func (this *PendingDeposits) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*PendingDeposits) - if !ok { - that2, ok := that.(PendingDeposits) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Recipient != that1.Recipient { - return false - } - if len(this.Coins) != len(that1.Coins) { - return false - } - for i := range this.Coins { - if !this.Coins[i].Equal(&that1.Coins[i]) { - return false - } - } - return true -} func (this *CoinsWrapper) Equal(that interface{}) bool { if that == nil { return this == nil @@ -612,33 +486,6 @@ func (this *CoinsWrapper) Equal(that interface{}) bool { } return true } -func (this *WithdrawalCommitment) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - - that1, ok := that.(*WithdrawalCommitment) - if !ok { - that2, ok := that.(WithdrawalCommitment) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !bytes.Equal(this.Commitment, that1.Commitment) { - return false - } - if !this.SubmitTime.Equal(that1.SubmitTime) { - return false - } - return true -} func (m *Params) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -861,50 +708,6 @@ func (m *BridgeInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *PendingDeposits) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *PendingDeposits) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *PendingDeposits) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Coins) > 0 { - for iNdEx := len(m.Coins) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Coins[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTypes(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if len(m.Recipient) > 0 { - i -= len(m.Recipient) - copy(dAtA[i:], m.Recipient) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Recipient))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func (m *CoinsWrapper) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -942,44 +745,6 @@ func (m *CoinsWrapper) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *WithdrawalCommitment) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *WithdrawalCommitment) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *WithdrawalCommitment) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - n3, err3 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(m.SubmitTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(m.SubmitTime):]) - if err3 != nil { - return 0, err3 - } - i -= n3 - i = encodeVarintTypes(dAtA, i, uint64(n3)) - i-- - dAtA[i] = 0x2a - if len(m.Commitment) > 0 { - i -= len(m.Commitment) - copy(dAtA[i:], m.Commitment) - i = encodeVarintTypes(dAtA, i, uint64(len(m.Commitment))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func encodeVarintTypes(dAtA []byte, offset int, v uint64) int { offset -= sovTypes(v) base := offset @@ -1093,25 +858,6 @@ func (m *BridgeInfo) Size() (n int) { return n } -func (m *PendingDeposits) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Recipient) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - if len(m.Coins) > 0 { - for _, e := range m.Coins { - l = e.Size() - n += 1 + l + sovTypes(uint64(l)) - } - } - return n -} - func (m *CoinsWrapper) Size() (n int) { if m == nil { return 0 @@ -1127,21 +873,6 @@ func (m *CoinsWrapper) Size() (n int) { return n } -func (m *WithdrawalCommitment) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Commitment) - if l > 0 { - n += 1 + l + sovTypes(uint64(l)) - } - l = github_com_cosmos_gogoproto_types.SizeOfStdTime(m.SubmitTime) - n += 1 + l + sovTypes(uint64(l)) - return n -} - func sovTypes(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -1817,122 +1548,6 @@ func (m *BridgeInfo) Unmarshal(dAtA []byte) error { } return nil } -func (m *PendingDeposits) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: PendingDeposits: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: PendingDeposits: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Recipient", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Recipient = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Coins", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Coins = append(m.Coins, types.Coin{}) - if err := m.Coins[len(m.Coins)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *CoinsWrapper) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -2017,123 +1632,6 @@ func (m *CoinsWrapper) Unmarshal(dAtA []byte) error { } return nil } -func (m *WithdrawalCommitment) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: WithdrawalCommitment: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: WithdrawalCommitment: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Commitment", wireType) - } - var byteLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Commitment = append(m.Commitment[:0], dAtA[iNdEx:postIndex]...) - if m.Commitment == nil { - m.Commitment = []byte{} - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubmitTime", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := github_com_cosmos_gogoproto_types.StdTimeUnmarshal(&m.SubmitTime, dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func skipTypes(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/x/ophost/client/cli/tx.go b/x/ophost/client/cli/tx.go index 04e32f25..e58d6e83 100644 --- a/x/ophost/client/cli/tx.go +++ b/x/ophost/client/cli/tx.go @@ -38,7 +38,6 @@ func GetTxCmd(ac address.Codec) *cobra.Command { NewDeleteOutput(ac), NewInitiateTokenDeposit(ac), NewFinalizeTokenWithdrawal(ac), - NewForceTokenWithdrawal(ac), ) return ophostTxCmd @@ -400,84 +399,3 @@ func NewFinalizeTokenWithdrawal(ac address.Codec) *cobra.Command { return cmd } - -func NewForceTokenWithdrawal(ac address.Codec) *cobra.Command { - cmd := &cobra.Command{ - Use: "force-token-withdrawal [path/to/withdrawal-info.json]", - Short: "send a tx to force withdraw", - Long: strings.TrimSpace( - fmt.Sprintf( - `send a tx to finalize token withdrawal with withdrawal info json. - Example: - $ %s tx ophost finalize-token-withdrawal path/to/withdrawal-info.json - - Where withrawal-info.json contains: - { - "bridge_id": "1", - "output_index": "1", - "sequence": "1", - "sender" : "bech32-address", - "amount": {"amount": "10000000", "denom": "uinit"}, - "commitment_proof": {"ops":[{"type":"ics23:iavl","key":"","data":""}, ...]}, - "app_hash": "base64-encoded app-hash", - "app_hash_proof": {"total": 1, "index": 1, "leaf_hash": "base64-encoded leaf-hash", "aunts": ["base64-encoded aunts"]}, - "version": "base64-encoded version", - "storage_root": "base64-encoded storage-root", - "last_block_hash": "base64-encoded latest-block-hash" - }`, version.AppName, - ), - ), - Args: cobra.ExactArgs(1), - RunE: func(cmd *cobra.Command, args []string) error { - clientCtx, err := client.GetClientTxContext(cmd) - if err != nil { - return err - } - - withdrawalBytes, err := os.ReadFile(args[0]) - if err != nil { - return err - } - withdrawalInfo := types.MsgForceTokenWithdrawal{} - err = clientCtx.Codec.UnmarshalJSON(withdrawalBytes, &withdrawalInfo) - if err != nil { - return err - } - - // cannot validate sender address here because it is l2 address. - sender := withdrawalInfo.Sender - if len(sender) == 0 { - return fmt.Errorf("sender address is required") - } - - receiver, err := ac.BytesToString(clientCtx.GetFromAddress()) - if err != nil { - return err - } - - msg := types.NewMsgForceTokenWithdrawal( - withdrawalInfo.BridgeId, - withdrawalInfo.OutputIndex, - withdrawalInfo.Sequence, - sender, - receiver, - withdrawalInfo.Amount, - withdrawalInfo.CommitmentProof, - withdrawalInfo.AppHash, - withdrawalInfo.AppHashProof, - withdrawalInfo.Version, - withdrawalInfo.StorageRoot, - withdrawalInfo.LastBlockHash, - ) - if err = msg.Validate(ac); err != nil { - return err - } - - return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg) - }, - } - - flags.AddTxFlagsToCmd(cmd) - - return cmd -} diff --git a/x/ophost/client/cli/tx_test.go b/x/ophost/client/cli/tx_test.go index 4a834450..92aad7a7 100644 --- a/x/ophost/client/cli/tx_test.go +++ b/x/ophost/client/cli/tx_test.go @@ -580,109 +580,6 @@ func (s *CLITestSuite) TestNewFinalizeTokenWithdrawal() { } } -//nolint:dupl -func (s *CLITestSuite) TestNewForceWithdrawal() { - require := s.Require() - cmd := cli.NewForceTokenWithdrawal(s.ac) - - addr0, err := s.ac.BytesToString(s.addrs[0]) - s.NoError(err) - - invalidConfig, err := os.CreateTemp("/tmp", "force_withdrawal_info") - require.NoError(err) - defer os.Remove(invalidConfig.Name()) - validConfig, err := os.CreateTemp("/tmp", "force_withdrawal_info") - require.NoError(err) - defer os.Remove(validConfig.Name()) - - _, err = invalidConfig.WriteString(`{}`) - s.NoError(err) - _, err = validConfig.WriteString(`{ - "bridge_id": "1", - "output_index": "1180", - "sequence": "5", - "sender": "init1q6jhwnarkw2j5qqgx3qlu20k8nrdglft5ksr0g", - "amount": {"amount": "100", "denom": "uinit"}, - "commitment_proof": {"ops": [{ - "type": "ics23:iavl", - "key": "IwAAAAAAAAAB", - "data": "CpMCCgkjAAAAAAAAAAESIMtX9/DuZvK6Ly5Ofai5mysOIMcc1smtkWGcJ9oE5Of6GgsIARgBIAEqAwACPCIpCAESJQIEPCDkbki1CAPOMl4Ctcyzudf7s8Zp4r+XHyHcj4hiCi1L5yAiKQgBEiUGCkAgAH/09hE0xKNYZmvloM+7ctsEYu/HQrlxV5ZxN4ImjHIgIikIARIlCBpAIJ0yvyT/hmehmQlXWKgYi417k187zU3n7lrVfUs5rDtuICIrCAESBAomQCAaISB6C9R6RalaXaXNuZGvXREt/d2Q5+TOzKlOdaamN42TPyIpCAESJQxYQCCQjCpw17bW9Bs834jmy4Vzo+UgMtoKUHzkMOhLUgyFnCA=" - }, - { - "type": "ics23:simple", - "key": "b3BjaGlsZA==", - "data": "Cv0BCgdvcGNoaWxkEiA5Hk4w8gqHwNcz/a+Fwx6e6b3Y5ZJ8/3NWw221YiLm/RoJCAEYASABKgEAIiUIARIhAUHASkLkeZTU28swYO7deS17Yj8b9h9PdJi9Xj4RGWZqIiUIARIhAV+QXBx9gArOP6US8yedcqldayaUyBfSAuixPNGd9nQxIicIARIBARogFhYnngyIgDM5RQ7IZQ35ljkp499OXrHC/5ZW2Z+2I+kiJwgBEgEBGiBOU4xO6+ZWJUItAU20nVBj3BQqfUH+BCSkmuHMEAQzqCIlCAESIQG33+cAibPmm9NGEZ6REEzPVaua/bAJQBspD5drk5UDjQ==" - } - ] - }, - "app_hash": "YokP3+yupFP2knNBqfJVFMa64FusQ4a3/B27UbfAX+c=", - "app_hash_proof": { - "total": "14", - "index": "10", - "leaf_hash": "62Ov0/tOgXUg7KHKcVwOc0GYCIWoftO7jjaSOgcLBPU=", - "aunts": [ - "n7nHUzyvHSGNo69tJ39rEBxC48O3XXhCQtpmNgTdU8I=", - "u32kdXs9V+sV711i+qWhv8/ouUNED+IcloCESsG2tXY=", - "zW9k0LARqw0as3I22ood9j21lGzEJAuQVrEZ741bzJU=", - "LSh6zkBwp78gIuPh2qWg05Thz1UihCkIdMCV1hhguOA=" - ] - }, - "version": "AQ==", - "storage_root": "KGlalV+mBHC7YFOLNX3g9LLzmyvP7QCm42HKo9N3Lu8=", - "last_block_hash": "6oFdc+PEkXVJAo5IpXJ91vbCT9FNuKCz5VSlaFmxG+Y=" - }`) - s.NoError(err) - - testCases := []struct { - name string - args []string - expectErr bool - expectedCode uint32 - respType proto.Message - }{ - { - "invalid transaction (invalid force withdrawal info)", - []string{ - invalidConfig.Name(), - fmt.Sprintf("--%s=%s", flags.FlagFrom, addr0), - fmt.Sprintf("--%s=true", flags.FlagSkipConfirmation), - fmt.Sprintf("--%s=%s", flags.FlagBroadcastMode, flags.BroadcastSync), - fmt.Sprintf("--%s=%s", flags.FlagFees, sdk.NewCoins(sdk.NewCoin(sdk.DefaultBondDenom, math.NewInt(10))).String()), - }, - true, 0, &sdk.TxResponse{}, - }, - { - "valid transaction", - []string{ - validConfig.Name(), - fmt.Sprintf("--%s=%s", flags.FlagFrom, addr0), - fmt.Sprintf("--%s=true", flags.FlagSkipConfirmation), - fmt.Sprintf("--%s=%s", flags.FlagBroadcastMode, flags.BroadcastSync), - fmt.Sprintf("--%s=%s", flags.FlagFees, sdk.NewCoins(sdk.NewCoin(sdk.DefaultBondDenom, math.NewInt(10))).String()), - }, - false, 0, &sdk.TxResponse{}, - }, - } - - for _, tc := range testCases { - tc := tc - s.Run(tc.name, func() { - out, err := clitestutil.ExecTestCLICmd(s.clientCtx, cmd, tc.args) - if tc.expectErr { - require.Error(err) - } else { - require.NoError(err, "test: %s\noutput: %s", tc.name, out.String()) - err = s.clientCtx.Codec.UnmarshalJSON(out.Bytes(), tc.respType) - require.NoError(err, out.String(), "test: %s, output\n:", tc.name, out.String()) - - txResp := tc.respType.(*sdk.TxResponse) - require.Equal(tc.expectedCode, txResp.Code, - "test: %s, output\n:", tc.name, out.String()) - } - }) - } -} - func TestCLITestSuite(t *testing.T) { suite.Run(t, new(CLITestSuite)) } diff --git a/x/ophost/keeper/msg_server.go b/x/ophost/keeper/msg_server.go index 2c4fdf65..6903b1bf 100644 --- a/x/ophost/keeper/msg_server.go +++ b/x/ophost/keeper/msg_server.go @@ -12,7 +12,6 @@ import ( "github.com/cosmos/cosmos-sdk/types/errors" govtypes "github.com/cosmos/cosmos-sdk/x/gov/types" - opchildtypes "github.com/initia-labs/OPinit/x/opchild/types" "github.com/initia-labs/OPinit/x/ophost/types" ) @@ -239,10 +238,13 @@ func (ms MsgServer) InitiateTokenDeposit(ctx context.Context, req *types.MsgInit return nil, err } - // send the funds to bridge address - bridgeAddr := types.BridgeAddress(bridgeId) - if err := ms.bankKeeper.SendCoins(ctx, sender, bridgeAddr, sdk.NewCoins(coin)); err != nil { - return nil, err + // transfer only positive amount + if coin.IsPositive() { + // send the funds to bridge address + bridgeAddr := types.BridgeAddress(bridgeId) + if err := ms.bankKeeper.SendCoins(ctx, sender, bridgeAddr, sdk.NewCoins(coin)); err != nil { + return nil, err + } } // record token pairs @@ -347,74 +349,6 @@ func (ms MsgServer) FinalizeTokenWithdrawal(ctx context.Context, req *types.MsgF return &types.MsgFinalizeTokenWithdrawalResponse{}, nil } -// ForceTokenWithdrwal implements types.MsgServer. -func (ms MsgServer) ForceTokenWithdrwal(ctx context.Context, req *types.MsgForceTokenWithdrawal) (*types.MsgForceTokenWithdrawalResponse, error) { - if err := req.Validate(ms.authKeeper.AddressCodec()); err != nil { - return nil, err - } - - bridgeId := req.BridgeId - outputIndex := req.OutputIndex - sequence := req.Sequence - appHash := req.AppHash - receiver := req.Receiver - amount := req.Amount - - if ok, err := ms.IsFinalized(ctx, bridgeId, outputIndex); err != nil { - return nil, err - } else if !ok { - return nil, types.ErrNotFinalized - } - - // check if the withdrawal is already claimed - withdrawalHash := types.GenerateWithdrawalHash(bridgeId, sequence, req.Sender, receiver, amount.Denom, amount.Amount.Uint64()) - if ok, err := ms.HasProvenWithdrawal(ctx, bridgeId, withdrawalHash); err != nil { - return nil, err - } else if ok { - return nil, types.ErrWithdrawalAlreadyFinalized - } - - outputProposal, err := ms.GetOutputProposal(ctx, bridgeId, outputIndex) - if err != nil { - return nil, err - } - - // validate output root generation - outputRoot := types.GenerateOutputRoot(req.Version[0], req.StorageRoot, req.LastBlockHash) - if !bytes.Equal(outputProposal.OutputRoot, outputRoot[:]) { - return nil, types.ErrFailedToVerifyWithdrawal.Wrap("invalid output root") - } - - // verify app hash - if err := opchildtypes.VerifyAppHash(req.LastBlockHash, appHash, &req.AppHashProof); err != nil { - return nil, types.ErrFailedToVerifyWithdrawal.Wrap(err.Error()) - } - - // failed to verify commitment - if err := opchildtypes.VerifyCommitment(appHash, sequence, receiver, amount, &req.CommitmentProof); err != nil { - return nil, types.ErrFailedToVerifyWithdrawal.Wrap(err.Error()) - } - - // record proven withdrawal - if err := ms.RecordProvenWithdrawal(ctx, bridgeId, withdrawalHash); err != nil { - return nil, err - } - - // transfer asset to a user from the bridge account - bridgeAddr := types.BridgeAddress(bridgeId) - receiverAccAddr, err := ms.authKeeper.AddressCodec().StringToBytes(receiver) - if err != nil { - return nil, err - } - - // transfer asset to a user from the bridge account - if err := ms.bankKeeper.SendCoins(ctx, bridgeAddr, receiverAccAddr, sdk.NewCoins(amount)); err != nil { - return nil, err - } - - return &types.MsgForceTokenWithdrawalResponse{}, nil -} - func (ms MsgServer) UpdateProposer(ctx context.Context, req *types.MsgUpdateProposer) (*types.MsgUpdateProposerResponse, error) { if err := req.Validate(ms.authKeeper.AddressCodec()); err != nil { return nil, err diff --git a/x/ophost/keeper/msg_server_test.go b/x/ophost/keeper/msg_server_test.go index 04c998d2..3e043268 100644 --- a/x/ophost/keeper/msg_server_test.go +++ b/x/ophost/keeper/msg_server_test.go @@ -1,29 +1,15 @@ package keeper_test import ( - "crypto/rand" "encoding/base64" - "fmt" "testing" "time" - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" - "github.com/cometbft/cometbft/crypto/tmhash" - cmtproto "github.com/cometbft/cometbft/proto/tendermint/types" - comettypes "github.com/cometbft/cometbft/types" - - "cosmossdk.io/log" "cosmossdk.io/math" - "cosmossdk.io/store/iavl" - "cosmossdk.io/store/metrics" - "cosmossdk.io/store/rootmulti" - storetypes "cosmossdk.io/store/types" - dbm "github.com/cosmos/cosmos-db" sdk "github.com/cosmos/cosmos-sdk/types" authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" "github.com/stretchr/testify/require" - opchildtypes "github.com/initia-labs/OPinit/x/opchild/types" "github.com/initia-labs/OPinit/x/ophost/keeper" "github.com/initia-labs/OPinit/x/ophost/types" ) @@ -577,195 +563,3 @@ func Test_MsgServer_UpdateParams(t *testing.T) { ) require.Error(t, err) } - -func Test_MsgServer_ForceWithdrawal(t *testing.T) { - ctx, input := createDefaultTestInput(t) - ms := keeper.NewMsgServerImpl(input.OPHostKeeper) - - config := types.BridgeConfig{ - Proposer: addrsStr[0], - Challengers: []string{addrsStr[1]}, - SubmissionInterval: time.Second * 10, - FinalizationPeriod: time.Second * 60, - SubmissionStartHeight: 1, - Metadata: []byte{1, 2, 3}, - BatchInfo: types.BatchInfo{Submitter: addrsStr[0], ChainType: types.BatchInfo_CHAIN_TYPE_INITIA}, - } - - _, err := ms.CreateBridge(ctx, types.NewMsgCreateBridge(addrsStr[0], config)) - require.NoError(t, err) - - // fund amount - amount := sdk.NewCoin("uinit", math.NewInt(1_000_000)) - input.Faucet.Fund(ctx, types.BridgeAddress(1), amount.Add(amount).Add(amount)) - - sender := "osmo174knscjg688ddtxj8smyjz073r3w5mms8ugvx6" - receiver := "cosmos174knscjg688ddtxj8smyjz073r3w5mms08musg" - - version := byte(1) - - leaf1 := types.GenerateWithdrawalHash(1, 1, sender, receiver, amount.Denom, amount.Amount.Uint64()) - leaf2 := types.GenerateWithdrawalHash(1, 2, sender, receiver, amount.Denom, amount.Amount.Uint64()) - leaf3 := types.GenerateWithdrawalHash(1, 3, sender, receiver, amount.Denom, amount.Amount.Uint64()) - - node33 := types.GenerateNodeHash(leaf3[:], leaf3[:]) - node12 := types.GenerateNodeHash(leaf1[:], leaf2[:]) - - storageRoot := types.GenerateNodeHash(node12[:], node33[:]) - appHash, commitmentProofs := makeAppHashWithCommitmentProof(t, []testInput{ - {recipient: receiver, amount: amount, l2Sequence: 1}, - {recipient: receiver, amount: amount, l2Sequence: 2}, - {recipient: receiver, amount: amount, l2Sequence: 3}, - }) - - block := makeRandBlock(t, appHash) - header := block.Header - blockHash := block.Hash() - appHashProof := opchildtypes.NewAppHashProof(&header) - err = opchildtypes.VerifyAppHash(blockHash, header.AppHash, appHashProof) - require.NoError(t, err) - outputRoot := types.GenerateOutputRoot(version, storageRoot[:], blockHash) - - now := time.Now().UTC() - ctx = ctx.WithBlockTime(now) - _, err = ms.ProposeOutput(ctx, types.NewMsgProposeOutput(addrsStr[0], 1, 1, 100, outputRoot[:])) - require.NoError(t, err) - - ctx = ctx.WithBlockTime(now.Add(time.Second * 60)) - - // force withdraw 1 - _, err = ms.ForceTokenWithdrwal(ctx, types.NewMsgForceTokenWithdrawal( - 1, 1, 1, sender, receiver, amount, *commitmentProofs[0], appHash, *appHashProof, []byte{version}, storageRoot[:], blockHash, - )) - require.NoError(t, err) - - receiverAddr, err := sdk.AccAddressFromBech32(receiver) - require.NoError(t, err) - require.Equal(t, amount, input.BankKeeper.GetBalance(ctx, receiverAddr, amount.Denom)) - - // cannot finalize 1 again - proofs := [][]byte{leaf2[:], node33[:]} - _, err = ms.FinalizeTokenWithdrawal(ctx, types.NewMsgFinalizeTokenWithdrawal(1, 1, 1, proofs, - sender, - receiver, - amount, - []byte{version}, storageRoot[:], blockHash, - )) - require.Error(t, err) - - // can finalize withdrawal 2 - proofs = [][]byte{leaf1[:], node33[:]} - _, err = ms.FinalizeTokenWithdrawal(ctx, types.NewMsgFinalizeTokenWithdrawal(1, 1, 2, proofs, - sender, - receiver, - amount, - []byte{version}, storageRoot[:], blockHash, - )) - require.NoError(t, err) - require.Equal(t, amount.Add(amount), input.BankKeeper.GetBalance(ctx, receiverAddr, amount.Denom)) - - // cannot force withdraw 2 again - _, err = ms.ForceTokenWithdrwal(ctx, types.NewMsgForceTokenWithdrawal( - 1, 1, 2, sender, receiver, amount, *commitmentProofs[1], appHash, *appHashProof, []byte{version}, storageRoot[:], blockHash, - )) - require.Error(t, err) - - // can force withdrawal 3 - _, err = ms.ForceTokenWithdrwal(ctx, types.NewMsgForceTokenWithdrawal( - 1, 1, 3, sender, receiver, amount, *commitmentProofs[2], appHash, *appHashProof, []byte{version}, storageRoot[:], blockHash, - )) - require.NoError(t, err) - require.Equal(t, amount.Add(amount).Add(amount), input.BankKeeper.GetBalance(ctx, receiverAddr, amount.Denom)) -} - -type testInput struct { - recipient string - amount sdk.Coin - l2Sequence uint64 -} - -func makeAppHashWithCommitmentProof(t *testing.T, inputs []testInput) ([]byte, []*v1.ProofOps) { - db := dbm.NewMemDB() - store := rootmulti.NewStore(db, log.NewNopLogger(), metrics.NewNoOpMetrics()) - iavlStoreKey := storetypes.NewKVStoreKey(opchildtypes.StoreKey) - - store.MountStoreWithDB(iavlStoreKey, storetypes.StoreTypeIAVL, nil) - require.NoError(t, store.LoadVersion(0)) - - iavlStore := store.GetCommitStore(iavlStoreKey).(*iavl.Store) - - commitmentKeys := make([][]byte, len(inputs)) - for i, input := range inputs { - commitment := opchildtypes.CommitWithdrawal(input.l2Sequence, input.recipient, input.amount) - commitmentKeys[i] = opchildtypes.WithdrawalCommitmentKey(input.l2Sequence) - - iavlStore.Set(commitmentKeys[i], commitment) - } - - cid := store.Commit() - - // Get Proof - proofs := make([]*v1.ProofOps, len(commitmentKeys)) - for i, commitmentKey := range commitmentKeys { - // same with curl https://rpc.initia.xyz/abci_query\?path\="\"store/opchild/key\""\&data=0xcommitmentkey\&prove=true - res, err := store.Query(&storetypes.RequestQuery{ - Path: fmt.Sprintf("/%s/key", opchildtypes.StoreKey), // required path to get key/value+proof - Data: commitmentKey, - Prove: true, - }) - require.NoError(t, err) - require.NotNil(t, res.ProofOps) - - proofs[i] = opchildtypes.NewProtoFromProofOps(res.ProofOps) - } - - return cid.GetHash(), proofs -} - -func makeRandBlock(t *testing.T, appHash []byte) *comettypes.Block { - txs := []comettypes.Tx{comettypes.Tx("foo"), comettypes.Tx("bar")} - lastID := makeBlockIDRandom() - h := int64(3) - voteSet, valSet, vals := randVoteSet(h-1, 1, cmtproto.PrecommitType, 10, 1, false) - extCommit, err := comettypes.MakeExtCommit(lastID, h-1, 1, voteSet, vals, time.Now().UTC(), false) - require.NoError(t, err) - - ev, err := comettypes.NewMockDuplicateVoteEvidenceWithValidator(h, time.Now().UTC(), vals[0], "block-test-chain") - require.NoError(t, err) - evList := []comettypes.Evidence{ev} - - block := comettypes.MakeBlock(h, txs, extCommit.ToCommit(), evList) - block.ValidatorsHash = valSet.Hash() - block.AppHash = appHash - - return block -} - -func makeBlockIDRandom() comettypes.BlockID { - var ( - blockHash = make([]byte, tmhash.Size) - partSetHash = make([]byte, tmhash.Size) - ) - rand.Read(blockHash) //nolint: errcheck // ignore errcheck for read - rand.Read(partSetHash) //nolint: errcheck // ignore errcheck for read - return comettypes.BlockID{Hash: blockHash, PartSetHeader: comettypes.PartSetHeader{Total: 123, Hash: partSetHash}} -} - -// NOTE: privValidators are in order -func randVoteSet( - height int64, - round int32, - signedMsgType cmtproto.SignedMsgType, - numValidators int, - votingPower int64, - extEnabled bool, -) (*comettypes.VoteSet, *comettypes.ValidatorSet, []comettypes.PrivValidator) { - valSet, privValidators := comettypes.RandValidatorSet(numValidators, votingPower) - if extEnabled { - if signedMsgType != cmtproto.PrecommitType { - return nil, nil, nil - } - return comettypes.NewExtendedVoteSet("test_chain_id", height, round, signedMsgType, valSet), valSet, privValidators - } - return comettypes.NewVoteSet("test_chain_id", height, round, signedMsgType, valSet), valSet, privValidators -} diff --git a/x/ophost/types/tx.go b/x/ophost/types/tx.go index 9aa90b2b..67194589 100644 --- a/x/ophost/types/tx.go +++ b/x/ophost/types/tx.go @@ -2,7 +2,6 @@ package types import ( "cosmossdk.io/core/address" - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" ) @@ -14,7 +13,6 @@ var ( _ sdk.Msg = &MsgDeleteOutput{} _ sdk.Msg = &MsgFinalizeTokenWithdrawal{} _ sdk.Msg = &MsgInitiateTokenDeposit{} - _ sdk.Msg = &MsgForceTokenWithdrawal{} _ sdk.Msg = &MsgUpdateProposer{} _ sdk.Msg = &MsgUpdateChallengers{} _ sdk.Msg = &MsgUpdateBatchInfo{} @@ -188,7 +186,8 @@ func (msg MsgInitiateTokenDeposit) Validate(ac address.Codec) error { return sdkerrors.ErrInvalidAddress.Wrap("to address cannot be empty") } - if !msg.Amount.IsValid() || msg.Amount.IsZero() { + // allow zero amount for creating account + if !msg.Amount.IsValid() { return ErrInvalidAmount } @@ -276,92 +275,6 @@ func (msg MsgFinalizeTokenWithdrawal) Validate(ac address.Codec) error { return nil } -/* MsgForceTokenWithdrawal */ - -// NewMsgForceTokenWithdrawal creates a new MsgForceTokenWithdrawal instance. -func NewMsgForceTokenWithdrawal( - bridgeId uint64, - outputIndex uint64, - sequence uint64, - sender string, - receiver string, - amount sdk.Coin, - commitmentProof v1.ProofOps, - appHash []byte, - appHashProof v1.Proof, - version []byte, - storageRoot []byte, - lastBlockHash []byte, -) *MsgForceTokenWithdrawal { - return &MsgForceTokenWithdrawal{ - BridgeId: bridgeId, - OutputIndex: outputIndex, - - Sequence: sequence, - Sender: sender, - Receiver: receiver, - Amount: amount, - CommitmentProof: commitmentProof, - - AppHash: appHash, - AppHashProof: appHashProof, - - Version: version, - StorageRoot: storageRoot, - LastBlockHash: lastBlockHash, - } -} - -// Validate performs basic MsgForceTokenWithdrawal message validation. -func (msg MsgForceTokenWithdrawal) Validate(ac address.Codec) error { - if msg.BridgeId == 0 { - return ErrInvalidBridgeId - } - - if msg.OutputIndex == 0 { - return ErrInvalidOutputIndex - } - - if msg.Sequence == 0 { - return ErrInvalidSequence - } - - // cannot validate sender address as it can be any format of address based on the chain. - if len(msg.Sender) == 0 { - return sdkerrors.ErrInvalidAddress.Wrap("sender address cannot be empty") - } - - if _, err := ac.StringToBytes(msg.Receiver); err != nil { - return err - } - - if !msg.Amount.IsValid() || msg.Amount.IsZero() { - return ErrInvalidAmount - } - - if len(msg.CommitmentProof.Ops) == 0 { - return ErrEmptyCommitmentProof - } - - if len(msg.AppHash) != 32 { - return ErrInvalidHashLength.Wrap("data_hash") - } - - if len(msg.Version) != 1 { - return ErrInvalidHashLength.Wrap("version") - } - - if len(msg.StorageRoot) != 32 { - return ErrInvalidHashLength.Wrap("storage_root") - } - - if len(msg.LastBlockHash) != 32 { - return ErrInvalidHashLength.Wrap("last_block_hash") - } - - return nil -} - /* MsgUpdateProposer */ // NewMsgUpdateProposer creates a new MsgUpdateProposer instance. diff --git a/x/ophost/types/tx.pb.go b/x/ophost/types/tx.pb.go index d6e24fbf..91a85878 100644 --- a/x/ophost/types/tx.pb.go +++ b/x/ophost/types/tx.pb.go @@ -6,7 +6,6 @@ package types import ( context "context" fmt "fmt" - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" _ "github.com/cosmos/cosmos-proto" types "github.com/cosmos/cosmos-sdk/types" _ "github.com/cosmos/cosmos-sdk/types/msgservice" @@ -511,96 +510,6 @@ func (m *MsgFinalizeTokenWithdrawalResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgFinalizeTokenWithdrawalResponse proto.InternalMessageInfo -// MsgForceTokenWithdrawal is a message to force a token withdrawal from L2 to L1. -type MsgForceTokenWithdrawal struct { - // anyone can force a token withdrawal from L2 to L1 even this is not the receiver. - BridgeId uint64 `protobuf:"varint,2,opt,name=bridge_id,json=bridgeId,proto3" json:"bridge_id,omitempty" yaml:"bridge_id"` - OutputIndex uint64 `protobuf:"varint,3,opt,name=output_index,json=outputIndex,proto3" json:"output_index,omitempty" yaml:"output_index"` - // withdrawal commitments and proofs - Sequence uint64 `protobuf:"varint,4,opt,name=sequence,proto3" json:"sequence,omitempty" yaml:"sequence"` - Sender string `protobuf:"bytes,5,opt,name=sender,proto3" json:"sender,omitempty" yaml:"sender"` - Receiver string `protobuf:"bytes,1,opt,name=receiver,proto3" json:"receiver,omitempty" yaml:"receiver"` - Amount types.Coin `protobuf:"bytes,6,opt,name=amount,proto3" json:"amount" yaml:"amount"` - CommitmentProof v1.ProofOps `protobuf:"bytes,7,opt,name=commitment_proof,json=commitmentProof,proto3" json:"commitment_proof" yaml:"commitment_proof"` - // app hash and proof - AppHash []byte `protobuf:"bytes,8,opt,name=app_hash,json=appHash,proto3" json:"app_hash,omitempty" yaml:"app_hash"` - AppHashProof v1.Proof `protobuf:"bytes,9,opt,name=app_hash_proof,json=appHashProof,proto3" json:"app_hash_proof" yaml:"app_hash_proof"` - // output root proofs - Version []byte `protobuf:"bytes,10,opt,name=version,proto3" json:"version,omitempty" yaml:"version"` - StorageRoot []byte `protobuf:"bytes,11,opt,name=storage_root,json=storageRoot,proto3" json:"storage_root,omitempty" yaml:"storage_root"` - LastBlockHash []byte `protobuf:"bytes,12,opt,name=last_block_hash,json=lastBlockHash,proto3" json:"last_block_hash,omitempty" yaml:"last_block_hash"` -} - -func (m *MsgForceTokenWithdrawal) Reset() { *m = MsgForceTokenWithdrawal{} } -func (m *MsgForceTokenWithdrawal) String() string { return proto.CompactTextString(m) } -func (*MsgForceTokenWithdrawal) ProtoMessage() {} -func (*MsgForceTokenWithdrawal) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{12} -} -func (m *MsgForceTokenWithdrawal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgForceTokenWithdrawal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgForceTokenWithdrawal.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgForceTokenWithdrawal) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgForceTokenWithdrawal.Merge(m, src) -} -func (m *MsgForceTokenWithdrawal) XXX_Size() int { - return m.Size() -} -func (m *MsgForceTokenWithdrawal) XXX_DiscardUnknown() { - xxx_messageInfo_MsgForceTokenWithdrawal.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgForceTokenWithdrawal proto.InternalMessageInfo - -// MsgForceTokenWithdrawalResponse returns a message handle result. -type MsgForceTokenWithdrawalResponse struct { -} - -func (m *MsgForceTokenWithdrawalResponse) Reset() { *m = MsgForceTokenWithdrawalResponse{} } -func (m *MsgForceTokenWithdrawalResponse) String() string { return proto.CompactTextString(m) } -func (*MsgForceTokenWithdrawalResponse) ProtoMessage() {} -func (*MsgForceTokenWithdrawalResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{13} -} -func (m *MsgForceTokenWithdrawalResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgForceTokenWithdrawalResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgForceTokenWithdrawalResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *MsgForceTokenWithdrawalResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgForceTokenWithdrawalResponse.Merge(m, src) -} -func (m *MsgForceTokenWithdrawalResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgForceTokenWithdrawalResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgForceTokenWithdrawalResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgForceTokenWithdrawalResponse proto.InternalMessageInfo - // MsgUpdateProposer is a message to change a proposer type MsgUpdateProposer struct { // authority is the address that controls the module (defaults to x/gov unless overwritten) @@ -614,7 +523,7 @@ func (m *MsgUpdateProposer) Reset() { *m = MsgUpdateProposer{} } func (m *MsgUpdateProposer) String() string { return proto.CompactTextString(m) } func (*MsgUpdateProposer) ProtoMessage() {} func (*MsgUpdateProposer) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{14} + return fileDescriptor_d16af6eaf4088d05, []int{12} } func (m *MsgUpdateProposer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -655,7 +564,7 @@ func (m *MsgUpdateProposerResponse) Reset() { *m = MsgUpdateProposerResp func (m *MsgUpdateProposerResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateProposerResponse) ProtoMessage() {} func (*MsgUpdateProposerResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{15} + return fileDescriptor_d16af6eaf4088d05, []int{13} } func (m *MsgUpdateProposerResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -699,7 +608,7 @@ func (m *MsgUpdateChallengers) Reset() { *m = MsgUpdateChallengers{} } func (m *MsgUpdateChallengers) String() string { return proto.CompactTextString(m) } func (*MsgUpdateChallengers) ProtoMessage() {} func (*MsgUpdateChallengers) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{16} + return fileDescriptor_d16af6eaf4088d05, []int{14} } func (m *MsgUpdateChallengers) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -740,7 +649,7 @@ func (m *MsgUpdateChallengersResponse) Reset() { *m = MsgUpdateChallenge func (m *MsgUpdateChallengersResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateChallengersResponse) ProtoMessage() {} func (*MsgUpdateChallengersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{17} + return fileDescriptor_d16af6eaf4088d05, []int{15} } func (m *MsgUpdateChallengersResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -782,7 +691,7 @@ func (m *MsgUpdateBatchInfo) Reset() { *m = MsgUpdateBatchInfo{} } func (m *MsgUpdateBatchInfo) String() string { return proto.CompactTextString(m) } func (*MsgUpdateBatchInfo) ProtoMessage() {} func (*MsgUpdateBatchInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{18} + return fileDescriptor_d16af6eaf4088d05, []int{16} } func (m *MsgUpdateBatchInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -823,7 +732,7 @@ func (m *MsgUpdateBatchInfoResponse) Reset() { *m = MsgUpdateBatchInfoRe func (m *MsgUpdateBatchInfoResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateBatchInfoResponse) ProtoMessage() {} func (*MsgUpdateBatchInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{19} + return fileDescriptor_d16af6eaf4088d05, []int{17} } func (m *MsgUpdateBatchInfoResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -865,7 +774,7 @@ func (m *MsgUpdateOracleConfig) Reset() { *m = MsgUpdateOracleConfig{} } func (m *MsgUpdateOracleConfig) String() string { return proto.CompactTextString(m) } func (*MsgUpdateOracleConfig) ProtoMessage() {} func (*MsgUpdateOracleConfig) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{20} + return fileDescriptor_d16af6eaf4088d05, []int{18} } func (m *MsgUpdateOracleConfig) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -902,7 +811,7 @@ func (m *MsgUpdateOracleConfigResponse) Reset() { *m = MsgUpdateOracleCo func (m *MsgUpdateOracleConfigResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateOracleConfigResponse) ProtoMessage() {} func (*MsgUpdateOracleConfigResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{21} + return fileDescriptor_d16af6eaf4088d05, []int{19} } func (m *MsgUpdateOracleConfigResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -947,7 +856,7 @@ func (m *MsgUpdateMetadata) Reset() { *m = MsgUpdateMetadata{} } func (m *MsgUpdateMetadata) String() string { return proto.CompactTextString(m) } func (*MsgUpdateMetadata) ProtoMessage() {} func (*MsgUpdateMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{22} + return fileDescriptor_d16af6eaf4088d05, []int{20} } func (m *MsgUpdateMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -988,7 +897,7 @@ func (m *MsgUpdateMetadataResponse) Reset() { *m = MsgUpdateMetadataResp func (m *MsgUpdateMetadataResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateMetadataResponse) ProtoMessage() {} func (*MsgUpdateMetadataResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{23} + return fileDescriptor_d16af6eaf4088d05, []int{21} } func (m *MsgUpdateMetadataResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1030,7 +939,7 @@ func (m *MsgUpdateParams) Reset() { *m = MsgUpdateParams{} } func (m *MsgUpdateParams) String() string { return proto.CompactTextString(m) } func (*MsgUpdateParams) ProtoMessage() {} func (*MsgUpdateParams) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{24} + return fileDescriptor_d16af6eaf4088d05, []int{22} } func (m *MsgUpdateParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1067,7 +976,7 @@ func (m *MsgUpdateParamsResponse) Reset() { *m = MsgUpdateParamsResponse func (m *MsgUpdateParamsResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateParamsResponse) ProtoMessage() {} func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{25} + return fileDescriptor_d16af6eaf4088d05, []int{23} } func (m *MsgUpdateParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1109,8 +1018,6 @@ func init() { proto.RegisterType((*MsgInitiateTokenDepositResponse)(nil), "opinit.ophost.v1.MsgInitiateTokenDepositResponse") proto.RegisterType((*MsgFinalizeTokenWithdrawal)(nil), "opinit.ophost.v1.MsgFinalizeTokenWithdrawal") proto.RegisterType((*MsgFinalizeTokenWithdrawalResponse)(nil), "opinit.ophost.v1.MsgFinalizeTokenWithdrawalResponse") - proto.RegisterType((*MsgForceTokenWithdrawal)(nil), "opinit.ophost.v1.MsgForceTokenWithdrawal") - proto.RegisterType((*MsgForceTokenWithdrawalResponse)(nil), "opinit.ophost.v1.MsgForceTokenWithdrawalResponse") proto.RegisterType((*MsgUpdateProposer)(nil), "opinit.ophost.v1.MsgUpdateProposer") proto.RegisterType((*MsgUpdateProposerResponse)(nil), "opinit.ophost.v1.MsgUpdateProposerResponse") proto.RegisterType((*MsgUpdateChallengers)(nil), "opinit.ophost.v1.MsgUpdateChallengers") @@ -1128,122 +1035,110 @@ func init() { func init() { proto.RegisterFile("opinit/ophost/v1/tx.proto", fileDescriptor_d16af6eaf4088d05) } var fileDescriptor_d16af6eaf4088d05 = []byte{ - // 1825 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xdd, 0x6f, 0x1b, 0x4b, - 0x15, 0x8f, 0xdd, 0xd4, 0xb5, 0xc7, 0x6e, 0x3e, 0xb6, 0x69, 0xe2, 0x6c, 0x8b, 0x37, 0x19, 0xca, - 0x25, 0x4d, 0x53, 0x9b, 0xe4, 0x42, 0x91, 0x2c, 0x21, 0x71, 0x37, 0xe5, 0x5e, 0x5a, 0xc9, 0xb4, - 0x5a, 0x40, 0x08, 0xb8, 0x92, 0xb5, 0xb6, 0x27, 0xeb, 0x55, 0xed, 0x9d, 0x65, 0x67, 0x9c, 0x34, - 0x48, 0x48, 0x88, 0x27, 0xe0, 0x09, 0x89, 0x7f, 0xe0, 0x8a, 0xa7, 0xfb, 0x58, 0x21, 0xfe, 0x88, - 0xbe, 0x20, 0x5d, 0x21, 0x1e, 0x78, 0xb2, 0xa0, 0x7d, 0xe8, 0x7d, 0x44, 0x7e, 0x42, 0xe2, 0x05, - 0xcd, 0xc7, 0xce, 0x7e, 0x78, 0xed, 0xa6, 0xa1, 0xbd, 0xb9, 0x2f, 0x51, 0xe6, 0x9c, 0xdf, 0x99, - 0xf3, 0x39, 0x67, 0xce, 0x8e, 0xc1, 0x26, 0xf6, 0x5d, 0xcf, 0xa5, 0x0d, 0xec, 0xf7, 0x31, 0xa1, - 0x8d, 0xe3, 0xfd, 0x06, 0x7d, 0x5a, 0xf7, 0x03, 0x4c, 0xb1, 0xb6, 0x22, 0x58, 0x75, 0xc1, 0xaa, - 0x1f, 0xef, 0xeb, 0xab, 0xf6, 0xd0, 0xf5, 0x70, 0x83, 0xff, 0x15, 0x20, 0xbd, 0xd6, 0xc5, 0x43, - 0x44, 0x3b, 0x47, 0xb4, 0xd1, 0x0d, 0x4e, 0x7d, 0x8a, 0xd9, 0x0e, 0x7e, 0x80, 0xf1, 0x51, 0xc4, - 0x27, 0x43, 0x4c, 0x1a, 0x1d, 0x9b, 0xa0, 0xc6, 0xf1, 0x7e, 0x07, 0x51, 0x7b, 0xbf, 0xd1, 0xc5, - 0xae, 0x27, 0xf9, 0x1b, 0x92, 0x3f, 0x24, 0x0e, 0x13, 0x1d, 0x12, 0x47, 0x32, 0x36, 0x05, 0xa3, - 0xcd, 0x57, 0x0d, 0xb1, 0x90, 0xac, 0x35, 0x07, 0x3b, 0x58, 0xd0, 0xd9, 0x7f, 0x92, 0x7a, 0x73, - 0xda, 0x93, 0x53, 0x1f, 0x49, 0x19, 0x38, 0xc9, 0x81, 0xa5, 0x16, 0x71, 0x2c, 0xd4, 0xc5, 0x41, - 0xcf, 0xb4, 0x69, 0xb7, 0xaf, 0x3d, 0x04, 0x25, 0x32, 0xea, 0x0c, 0x5d, 0x4a, 0x51, 0x50, 0xcd, - 0x6d, 0xe5, 0x76, 0x4a, 0xe6, 0xde, 0x64, 0x6c, 0xac, 0x9c, 0xda, 0xc3, 0x41, 0x13, 0x2a, 0x16, - 0xfc, 0xdb, 0x5f, 0xee, 0xae, 0x49, 0xfd, 0x1f, 0xf4, 0x7a, 0x01, 0x22, 0xe4, 0x87, 0x34, 0x70, - 0x3d, 0xc7, 0x8a, 0xc4, 0xb5, 0x7d, 0x50, 0xea, 0x04, 0x6e, 0xcf, 0x41, 0x6d, 0xb7, 0x57, 0xcd, - 0x6f, 0xe5, 0x76, 0x16, 0xcd, 0xb5, 0x68, 0x2f, 0xc5, 0x82, 0x56, 0x51, 0xfc, 0xff, 0xa0, 0xa7, - 0x7d, 0x1b, 0x94, 0x3b, 0xcc, 0x8e, 0x76, 0xe7, 0x94, 0x22, 0x52, 0xbd, 0xb4, 0x95, 0xdb, 0xa9, - 0x98, 0xeb, 0x93, 0xb1, 0xa1, 0x49, 0xa1, 0x88, 0x09, 0x2d, 0xc0, 0x57, 0x26, 0x5b, 0x34, 0x77, - 0x7e, 0xf3, 0xea, 0xd9, 0x6e, 0xa4, 0xfb, 0xf7, 0xaf, 0x9e, 0xed, 0x5e, 0x97, 0x4e, 0x27, 0x3d, - 0x84, 0x55, 0xb0, 0x9e, 0xa4, 0x58, 0x88, 0xf8, 0xd8, 0x23, 0x08, 0xfe, 0x3d, 0x07, 0x96, 0x5b, - 0xc4, 0x39, 0x0c, 0x90, 0x4d, 0x91, 0xc9, 0x4d, 0xd2, 0xee, 0x83, 0x2b, 0x5d, 0xb6, 0xc6, 0x61, - 0x34, 0x76, 0x27, 0x63, 0x63, 0x49, 0x18, 0x23, 0x19, 0xb3, 0x63, 0x11, 0x8a, 0x6a, 0x16, 0x28, - 0x74, 0xb1, 0x77, 0xe4, 0x3a, 0x3c, 0x0c, 0xe5, 0x83, 0x5a, 0x3d, 0x5d, 0x46, 0x75, 0xa1, 0xef, - 0x90, 0xa3, 0x4c, 0xfd, 0xf9, 0xd8, 0x58, 0x98, 0x8c, 0x8d, 0xab, 0x52, 0x11, 0xa7, 0xc2, 0x4f, - 0x5f, 0x3d, 0xdb, 0xcd, 0x59, 0x72, 0xa7, 0xe6, 0xd7, 0x99, 0xc7, 0xa1, 0x06, 0xe6, 0xef, 0x7a, - 0xe4, 0x6f, 0xdc, 0x05, 0x78, 0x0f, 0x6c, 0xa4, 0x48, 0xa1, 0xc7, 0xda, 0x8d, 0x78, 0x86, 0x98, - 0x7f, 0x8b, 0x51, 0x2e, 0xe0, 0x24, 0x0f, 0x56, 0x5a, 0xc4, 0x79, 0x1c, 0x60, 0x1f, 0x13, 0xf4, - 0x68, 0x44, 0xfd, 0x11, 0xd5, 0x3e, 0x02, 0x45, 0x5f, 0x10, 0xc2, 0x80, 0xdc, 0x99, 0x8c, 0x8d, - 0x65, 0x61, 0x67, 0xc8, 0x99, 0x1d, 0x11, 0x25, 0x7c, 0x9e, 0xe2, 0x68, 0x82, 0x0a, 0xe6, 0x56, - 0xb4, 0x5d, 0xaf, 0x87, 0x9e, 0xf2, 0xea, 0x58, 0x34, 0x37, 0x26, 0x63, 0xe3, 0x9a, 0x90, 0x8a, - 0x73, 0xa1, 0x55, 0x16, 0xcb, 0x07, 0x6c, 0xa5, 0x99, 0x60, 0x79, 0x70, 0xd0, 0xee, 0x0c, 0x70, - 0xf7, 0x49, 0xdb, 0x1b, 0x0d, 0x3b, 0x28, 0xa8, 0x2e, 0x72, 0x71, 0x7d, 0x32, 0x36, 0xd6, 0x85, - 0x78, 0x0a, 0x00, 0xad, 0xab, 0x83, 0x03, 0x93, 0x11, 0x7e, 0xc0, 0xd7, 0xac, 0x38, 0xa5, 0x86, - 0x00, 0x63, 0x5a, 0xbd, 0x9c, 0x2e, 0xce, 0x18, 0x13, 0x5a, 0x40, 0xac, 0x2c, 0x8c, 0x69, 0xf3, - 0x36, 0x4b, 0x95, 0x72, 0x9d, 0xe5, 0x6a, 0x23, 0xca, 0x55, 0x22, 0xbe, 0x50, 0x07, 0xd5, 0x34, - 0x4d, 0xd5, 0xe7, 0x7f, 0x45, 0x7d, 0xde, 0x47, 0x03, 0x44, 0xc3, 0x7c, 0xb4, 0x00, 0xe8, 0xf6, - 0xed, 0xc1, 0x00, 0x79, 0x8e, 0xca, 0xc8, 0xdd, 0xc9, 0xd8, 0x58, 0x95, 0x95, 0xa3, 0x78, 0xb3, - 0x73, 0x12, 0xdb, 0xe0, 0x0b, 0xce, 0x4a, 0x73, 0x97, 0x05, 0x26, 0xa6, 0x3f, 0x55, 0xc6, 0x71, - 0x4f, 0xe1, 0x26, 0x2f, 0xe3, 0x38, 0x29, 0x0a, 0x4c, 0x9e, 0xf3, 0x1e, 0x78, 0x2e, 0x75, 0x6d, - 0x8a, 0x7e, 0x84, 0x9f, 0x20, 0xef, 0x3e, 0xf2, 0x31, 0x71, 0xa9, 0xf6, 0x01, 0x28, 0x10, 0xe4, - 0xf5, 0x54, 0x70, 0x6e, 0x47, 0xc7, 0x4a, 0xd0, 0x67, 0x07, 0x46, 0x0a, 0x9e, 0x27, 0x28, 0xdf, - 0x02, 0x79, 0x8a, 0x79, 0x28, 0x4a, 0xe6, 0xd7, 0x26, 0x63, 0xa3, 0x24, 0xb0, 0x14, 0xcf, 0xd6, - 0x96, 0xa7, 0x58, 0x6b, 0x81, 0x82, 0x3d, 0xc4, 0x23, 0x8f, 0xf2, 0xe2, 0x2c, 0x1f, 0x6c, 0xd6, - 0x25, 0x94, 0xdd, 0x14, 0x75, 0x79, 0x53, 0xd4, 0x0f, 0xb1, 0xeb, 0xa5, 0x5b, 0x84, 0x10, 0x0b, - 0x5b, 0x84, 0x58, 0x69, 0x7b, 0x60, 0xb1, 0x67, 0x53, 0x5b, 0x56, 0x6a, 0xf5, 0xf9, 0xd8, 0xc8, - 0x4d, 0xc6, 0x46, 0x59, 0x48, 0x30, 0x0e, 0xc7, 0x2f, 0x58, 0x1c, 0xd5, 0xbc, 0xf7, 0xdb, 0x4f, - 0x8c, 0x85, 0xcf, 0x3f, 0x31, 0x16, 0x58, 0x52, 0xa4, 0xef, 0x2c, 0x21, 0xb5, 0x28, 0x21, 0x59, - 0x11, 0x86, 0xdf, 0x01, 0xc6, 0x0c, 0x96, 0xea, 0x33, 0x3a, 0x28, 0x12, 0xf4, 0x8b, 0x11, 0xf2, - 0xba, 0x28, 0x6c, 0x33, 0xe1, 0x1a, 0xfe, 0xf9, 0x32, 0xd0, 0x5b, 0xc4, 0xf9, 0xd0, 0xf5, 0xec, - 0x81, 0xfb, 0x4b, 0x21, 0xff, 0x13, 0x97, 0xf6, 0x7b, 0x81, 0x7d, 0x62, 0x0f, 0xbe, 0xe8, 0x3e, - 0x71, 0x0f, 0xac, 0x9e, 0x28, 0xe5, 0x6d, 0x7e, 0x69, 0x93, 0xea, 0xe2, 0xd6, 0xa5, 0x9d, 0x8a, - 0x59, 0x62, 0xf1, 0x13, 0x01, 0x5b, 0x89, 0x30, 0x8f, 0x39, 0x24, 0x56, 0x66, 0x97, 0xcf, 0x5b, - 0x66, 0x1f, 0x81, 0x62, 0x80, 0xba, 0xc8, 0x3d, 0xce, 0x6a, 0xad, 0x21, 0x67, 0x4e, 0x6b, 0x0d, - 0x21, 0x5a, 0x23, 0x16, 0xed, 0x02, 0xf7, 0xfd, 0x5a, 0xb4, 0x91, 0x8a, 0x7b, 0x94, 0x82, 0x58, - 0xd9, 0x5d, 0x79, 0x3b, 0x65, 0x77, 0xe5, 0x18, 0x05, 0xc4, 0xc5, 0x5e, 0xb5, 0xc8, 0x2b, 0x4f, - 0x8b, 0xee, 0x4c, 0xc9, 0x80, 0x56, 0x08, 0x61, 0xd9, 0x22, 0x14, 0x07, 0xb6, 0x83, 0x44, 0x5b, - 0x2d, 0x71, 0x91, 0x58, 0xb6, 0xe2, 0x5c, 0x68, 0x95, 0xe5, 0x92, 0x35, 0x56, 0xde, 0xd5, 0x6d, - 0x42, 0x65, 0xdb, 0xee, 0xdb, 0xa4, 0x5f, 0x05, 0x5c, 0x3c, 0xde, 0xd5, 0x93, 0x00, 0xd6, 0xd5, - 0x6d, 0x42, 0x79, 0x5f, 0xff, 0xbe, 0x4d, 0xfa, 0xcd, 0xf7, 0x79, 0x73, 0x0e, 0x83, 0xc7, 0x0a, - 0x7e, 0x3b, 0x2a, 0xf8, 0x19, 0x55, 0x09, 0x6f, 0x01, 0x38, 0x9b, 0xab, 0xfa, 0xd2, 0x7f, 0x0a, - 0xbc, 0x2f, 0x7d, 0x88, 0x83, 0xee, 0x45, 0xd7, 0x75, 0xbc, 0x26, 0x16, 0xcf, 0x52, 0x13, 0x5f, - 0xa6, 0x82, 0x8e, 0xea, 0xb3, 0xf0, 0x36, 0xea, 0x73, 0x08, 0x56, 0xba, 0x78, 0x38, 0x74, 0xe9, - 0x10, 0x79, 0x54, 0x9c, 0x71, 0x59, 0xf8, 0x37, 0xeb, 0xe1, 0xe4, 0x5e, 0x17, 0x93, 0x3b, 0x9b, - 0xcc, 0xf8, 0x09, 0x7f, 0xe4, 0x13, 0xf3, 0x96, 0xdc, 0x7b, 0x23, 0x9c, 0xca, 0x92, 0x7b, 0x48, - 0x2d, 0xcb, 0x11, 0x9d, 0x4b, 0x6a, 0x75, 0x50, 0xb4, 0x7d, 0x5f, 0x54, 0xa7, 0x38, 0x0f, 0xb1, - 0xd0, 0x87, 0x1c, 0x68, 0x5d, 0xb1, 0x7d, 0x9f, 0x15, 0xa4, 0xd6, 0x05, 0x4b, 0x21, 0x55, 0x1a, - 0x57, 0x52, 0x5e, 0x67, 0x1b, 0x67, 0x42, 0x69, 0xd9, 0xf5, 0xe4, 0xa6, 0x09, 0xbb, 0x2a, 0x72, - 0x7f, 0x61, 0x54, 0xec, 0x8c, 0x82, 0x37, 0x3f, 0xa3, 0xe5, 0xff, 0xef, 0x8c, 0x56, 0xde, 0xf4, - 0x8c, 0x7e, 0x63, 0xea, 0x8c, 0xc6, 0x2e, 0xa5, 0xac, 0xe3, 0x05, 0xb7, 0xf9, 0xa5, 0x94, 0xc5, - 0x52, 0xa7, 0xf3, 0x8f, 0x79, 0xb0, 0xda, 0x22, 0xce, 0x8f, 0xfd, 0x9e, 0x4d, 0xd1, 0xe3, 0x70, - 0x2e, 0x7d, 0x08, 0x4a, 0xf6, 0x88, 0xf6, 0x71, 0xe0, 0xd2, 0xd3, 0xe9, 0x0f, 0x20, 0xc5, 0x9a, - 0xf3, 0x01, 0xa4, 0x30, 0xe7, 0x39, 0xe3, 0x16, 0xa8, 0x78, 0xe8, 0xa4, 0xad, 0x66, 0x6c, 0x31, - 0x42, 0x34, 0xa2, 0x48, 0xc7, 0xb9, 0xb3, 0x8d, 0x28, 0x7b, 0xe8, 0x24, 0x74, 0xa9, 0x79, 0x87, - 0x7f, 0x1b, 0x29, 0xb3, 0x58, 0xf8, 0xaa, 0x51, 0xf8, 0x92, 0xfe, 0xc3, 0x23, 0xb0, 0x39, 0x45, - 0x54, 0xf7, 0xf8, 0x76, 0xaa, 0x03, 0x89, 0xbb, 0x3c, 0xd1, 0x68, 0xde, 0x9b, 0x1e, 0xb4, 0xb9, - 0xe7, 0xa9, 0x61, 0x1a, 0xfe, 0x29, 0x0f, 0xd6, 0x94, 0xa2, 0x43, 0x35, 0x01, 0x92, 0x8b, 0x4e, - 0xc0, 0xcf, 0xc1, 0x32, 0x0b, 0x71, 0x34, 0x93, 0xb2, 0xaf, 0xd0, 0x4b, 0x3b, 0x25, 0xf3, 0x20, - 0x2a, 0xd7, 0x14, 0x60, 0xb6, 0x29, 0x4b, 0x1e, 0x3a, 0x89, 0xf9, 0xd6, 0xac, 0x4f, 0x67, 0xe2, - 0x46, 0x3a, 0x13, 0x31, 0x3c, 0x74, 0xc1, 0xcd, 0x2c, 0xfa, 0xbb, 0xc8, 0xc7, 0xa7, 0x79, 0xa0, - 0x29, 0x5d, 0xfc, 0xbb, 0xf8, 0x81, 0x77, 0x84, 0x2f, 0x3a, 0x1b, 0x08, 0xb0, 0x10, 0xb6, 0xc5, - 0x67, 0xbf, 0xeb, 0x1d, 0x89, 0x99, 0xba, 0x7c, 0x70, 0x23, 0xe3, 0x03, 0x3a, 0xb4, 0x39, 0xdd, - 0x0d, 0x93, 0x1b, 0x84, 0xdd, 0xd0, 0x43, 0x27, 0x4a, 0xa2, 0xb9, 0x37, 0x9d, 0x97, 0xcd, 0x74, - 0x5e, 0x14, 0x1a, 0x3a, 0x7c, 0x60, 0x4d, 0x51, 0xdf, 0x45, 0x4e, 0x7e, 0x97, 0x07, 0xd7, 0x95, - 0xa6, 0x47, 0x81, 0xdd, 0x1d, 0xc8, 0x07, 0x82, 0x8b, 0x4e, 0xcb, 0x77, 0xc1, 0x12, 0xe6, 0xe6, - 0xb4, 0x91, 0x67, 0x77, 0x06, 0xa8, 0xc7, 0xd3, 0x52, 0x34, 0x37, 0xa3, 0xa8, 0x27, 0xf9, 0xd0, - 0xba, 0x2a, 0x08, 0xdf, 0x13, 0xeb, 0x66, 0x63, 0x3a, 0xe2, 0x37, 0xd3, 0x11, 0x8f, 0x7b, 0x0c, - 0x0d, 0xf0, 0x95, 0x4c, 0x86, 0x6a, 0xe7, 0xff, 0xce, 0xc5, 0xda, 0x79, 0x0b, 0x51, 0x9b, 0x7d, - 0xd4, 0x5c, 0x74, 0xa0, 0x1a, 0xa0, 0x38, 0x94, 0xa6, 0xc8, 0xc7, 0xac, 0xd8, 0xdd, 0x1f, 0x72, - 0xa0, 0xa5, 0x40, 0x67, 0xea, 0xd5, 0xa1, 0x73, 0x89, 0x5e, 0x1d, 0x12, 0xdf, 0x45, 0x1d, 0xfe, - 0x55, 0x3c, 0x3c, 0xc8, 0x4b, 0xc1, 0x0e, 0xec, 0xe1, 0xdb, 0x6d, 0xd3, 0x87, 0xa0, 0xe0, 0xf3, - 0x5d, 0xe5, 0xf3, 0x58, 0x75, 0xfa, 0x74, 0x0b, 0xad, 0xe6, 0x6a, 0x34, 0xda, 0x09, 0x09, 0x68, - 0x49, 0x51, 0xf1, 0xc8, 0x92, 0x8c, 0xdc, 0xfa, 0xd4, 0x2d, 0x27, 0x64, 0xc4, 0x53, 0x42, 0x9c, - 0x14, 0x46, 0xed, 0xe0, 0xf3, 0x12, 0xb8, 0xd4, 0x22, 0x8e, 0xf6, 0x53, 0x50, 0x8e, 0x3f, 0x8b, - 0x6e, 0x4d, 0x5b, 0x94, 0x7c, 0x44, 0xd4, 0x77, 0x5e, 0x87, 0x50, 0x89, 0xf9, 0x18, 0x54, 0x12, - 0x4f, 0x8c, 0xdb, 0x99, 0x92, 0x71, 0x88, 0x7e, 0xfb, 0xb5, 0x10, 0xb5, 0x7b, 0x1b, 0x5c, 0x4d, - 0xbe, 0xd8, 0xc1, 0x4c, 0xd9, 0x04, 0x46, 0xdf, 0x7d, 0x3d, 0x26, 0x6e, 0x7e, 0xe2, 0x05, 0x2a, - 0xdb, 0xfc, 0x38, 0x64, 0x86, 0xf9, 0x59, 0x4f, 0x39, 0x1a, 0x05, 0x6b, 0x99, 0xcf, 0x38, 0xd9, - 0x5b, 0x64, 0x41, 0xf5, 0xfd, 0x33, 0x43, 0x95, 0xd6, 0x5f, 0x81, 0x8d, 0x59, 0xef, 0x0f, 0x7b, - 0x99, 0xbb, 0xcd, 0x40, 0xeb, 0xdf, 0x7c, 0x13, 0xb4, 0x52, 0x4f, 0xc0, 0xb5, 0xf4, 0xa4, 0xca, - 0x54, 0x67, 0xfb, 0x9c, 0x35, 0xd3, 0xce, 0xf0, 0x79, 0xde, 0xf8, 0xab, 0x75, 0xc0, 0x52, 0x6a, - 0xf4, 0xfd, 0x6a, 0xe6, 0x26, 0x49, 0x90, 0x7e, 0xe7, 0x0c, 0x20, 0xa5, 0xe3, 0x09, 0x58, 0x9d, - 0x1e, 0xf0, 0xde, 0x9b, 0xb3, 0x43, 0x0c, 0xa7, 0xd7, 0xcf, 0x86, 0x53, 0xca, 0x10, 0x58, 0x4e, - 0x4f, 0x2f, 0xb7, 0xe6, 0x6c, 0xa1, 0x50, 0xfa, 0xde, 0x59, 0x50, 0xd3, 0x71, 0x53, 0x77, 0xcc, - 0xbc, 0xb8, 0x85, 0xa0, 0xb9, 0x71, 0x9b, 0xea, 0xdd, 0x1f, 0x83, 0x4a, 0xa2, 0xd9, 0x6e, 0xcf, - 0x0b, 0x3a, 0x87, 0xcc, 0x38, 0x63, 0x59, 0x3d, 0x4e, 0xbf, 0xfc, 0x6b, 0x36, 0x02, 0x99, 0x0f, - 0x9f, 0xff, 0xab, 0xb6, 0xf0, 0xfc, 0x45, 0x2d, 0xf7, 0xd9, 0x8b, 0x5a, 0xee, 0x9f, 0x2f, 0x6a, - 0xb9, 0x3f, 0xbc, 0xac, 0x2d, 0x7c, 0xf6, 0xb2, 0xb6, 0xf0, 0x8f, 0x97, 0xb5, 0x85, 0x9f, 0xed, - 0x39, 0x2e, 0xed, 0x8f, 0x3a, 0xec, 0x9b, 0xb3, 0xe1, 0xf2, 0xb3, 0x73, 0x77, 0x60, 0x77, 0x48, - 0xe3, 0xd1, 0x63, 0xfe, 0x83, 0xd2, 0xd3, 0xf0, 0x27, 0x25, 0xfe, 0x7b, 0x52, 0xa7, 0xc0, 0x7f, - 0x50, 0x7a, 0xff, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x55, 0xca, 0x0c, 0xb0, 0x3a, 0x1b, 0x00, - 0x00, + // 1639 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xcd, 0x6f, 0x1b, 0x45, + 0x14, 0xb7, 0x9d, 0x8f, 0xda, 0xe3, 0x7c, 0x6e, 0xd3, 0xc4, 0xd9, 0xb6, 0xde, 0x64, 0xa8, 0x4a, + 0x92, 0xa6, 0xb6, 0x92, 0xa2, 0x22, 0x59, 0x42, 0xa2, 0x9b, 0x42, 0x49, 0x25, 0xd3, 0x68, 0x01, + 0x21, 0xa0, 0x92, 0xb5, 0xb6, 0x27, 0xeb, 0x55, 0xed, 0x1d, 0xb3, 0x33, 0x4e, 0x1a, 0x24, 0x24, + 0xc4, 0x09, 0x38, 0x21, 0x71, 0xe3, 0x54, 0x71, 0xea, 0xb1, 0x07, 0xfe, 0x88, 0x5c, 0x90, 0x2a, + 0xc4, 0x81, 0x93, 0x05, 0xcd, 0xa1, 0x1c, 0x91, 0x39, 0x72, 0x41, 0x33, 0xb3, 0x3b, 0xfb, 0x61, + 0x3b, 0x0d, 0x55, 0xdb, 0x5c, 0xa2, 0xcc, 0x7b, 0xbf, 0x37, 0xef, 0xbd, 0xdf, 0x7b, 0x7e, 0x33, + 0xb3, 0x60, 0x11, 0xb7, 0x6d, 0xc7, 0xa6, 0x45, 0xdc, 0x6e, 0x60, 0x42, 0x8b, 0x7b, 0x1b, 0x45, + 0x7a, 0xbf, 0xd0, 0x76, 0x31, 0xc5, 0xca, 0x8c, 0x50, 0x15, 0x84, 0xaa, 0xb0, 0xb7, 0xa1, 0xce, + 0x9a, 0x2d, 0xdb, 0xc1, 0x45, 0xfe, 0x57, 0x80, 0xd4, 0x7c, 0x0d, 0x93, 0x16, 0x26, 0xc5, 0xaa, + 0x49, 0x50, 0x71, 0x6f, 0xa3, 0x8a, 0xa8, 0xb9, 0x51, 0xac, 0x61, 0xdb, 0xf1, 0xf4, 0x0b, 0x9e, + 0xbe, 0x45, 0x2c, 0xb6, 0x79, 0x8b, 0x58, 0x9e, 0x62, 0x51, 0x28, 0x2a, 0x7c, 0x55, 0x14, 0x0b, + 0x4f, 0x35, 0x67, 0x61, 0x0b, 0x0b, 0x39, 0xfb, 0xcf, 0x93, 0x5e, 0xe8, 0x8f, 0xf4, 0xa0, 0x8d, + 0x3c, 0x1b, 0xd8, 0x4b, 0x82, 0xa9, 0x32, 0xb1, 0x0c, 0x54, 0xc3, 0x6e, 0x5d, 0x37, 0x69, 0xad, + 0xa1, 0xdc, 0x06, 0x19, 0xd2, 0xa9, 0xb6, 0x6c, 0x4a, 0x91, 0x9b, 0x4b, 0x2e, 0x25, 0x57, 0x32, + 0xfa, 0x7a, 0xaf, 0xab, 0xcd, 0x1c, 0x98, 0xad, 0x66, 0x09, 0x4a, 0x15, 0xfc, 0xf5, 0xe7, 0xab, + 0x73, 0x9e, 0xff, 0x1b, 0xf5, 0xba, 0x8b, 0x08, 0xf9, 0x80, 0xba, 0xb6, 0x63, 0x19, 0x81, 0xb9, + 0xb2, 0x01, 0x32, 0x55, 0xd7, 0xae, 0x5b, 0xa8, 0x62, 0xd7, 0x73, 0xa9, 0xa5, 0xe4, 0xca, 0xa8, + 0x3e, 0x17, 0xec, 0x25, 0x55, 0xd0, 0x48, 0x8b, 0xff, 0xb7, 0xeb, 0xca, 0x9b, 0x20, 0x5b, 0x65, + 0x71, 0x54, 0xaa, 0x07, 0x14, 0x91, 0xdc, 0xc8, 0x52, 0x72, 0x65, 0x42, 0x9f, 0xef, 0x75, 0x35, + 0xc5, 0x33, 0x0a, 0x94, 0xd0, 0x00, 0x7c, 0xa5, 0xb3, 0x45, 0x69, 0xe5, 0xeb, 0xa7, 0x8f, 0xd6, + 0x02, 0xdf, 0xdf, 0x3d, 0x7d, 0xb4, 0x76, 0xce, 0x4b, 0x3a, 0x9a, 0x21, 0xcc, 0x81, 0xf9, 0xa8, + 0xc4, 0x40, 0xa4, 0x8d, 0x1d, 0x82, 0xe0, 0x6f, 0x49, 0x30, 0x5d, 0x26, 0xd6, 0x96, 0x8b, 0x4c, + 0x8a, 0x74, 0x1e, 0x92, 0x72, 0x13, 0x9c, 0xa9, 0xb1, 0x35, 0xf6, 0xd9, 0x58, 0xeb, 0x75, 0xb5, + 0x29, 0x11, 0x8c, 0xa7, 0x18, 0xce, 0x85, 0x6f, 0xaa, 0x18, 0x60, 0xbc, 0x86, 0x9d, 0x5d, 0xdb, + 0xe2, 0x34, 0x64, 0x37, 0xf3, 0x85, 0x78, 0x9b, 0x14, 0x84, 0xbf, 0x2d, 0x8e, 0xd2, 0xd5, 0xc3, + 0xae, 0x96, 0xe8, 0x75, 0xb5, 0x49, 0xcf, 0x11, 0x97, 0xc2, 0x87, 0x4f, 0x1f, 0xad, 0x25, 0x0d, + 0x6f, 0xa7, 0xd2, 0xeb, 0x2c, 0x63, 0xdf, 0x03, 0xcb, 0x77, 0x3e, 0xc8, 0x37, 0x9c, 0x02, 0xbc, + 0x0e, 0x16, 0x62, 0x22, 0x3f, 0x63, 0xe5, 0x7c, 0xb8, 0x42, 0x2c, 0xbf, 0xd1, 0xa0, 0x16, 0xb0, + 0x97, 0x02, 0x33, 0x65, 0x62, 0xed, 0xb8, 0xb8, 0x8d, 0x09, 0xba, 0xd3, 0xa1, 0xed, 0x0e, 0x55, + 0x6e, 0x81, 0x74, 0x5b, 0x08, 0x7c, 0x42, 0xae, 0xf4, 0xba, 0xda, 0xb4, 0x88, 0xd3, 0xd7, 0x0c, + 0x67, 0x44, 0x1a, 0x3f, 0x4f, 0x73, 0x94, 0xc0, 0x04, 0xe6, 0x51, 0x54, 0x6c, 0xa7, 0x8e, 0xee, + 0xf3, 0xee, 0x18, 0xd5, 0x17, 0x7a, 0x5d, 0xed, 0xac, 0xb0, 0x0a, 0x6b, 0xa1, 0x91, 0x15, 0xcb, + 0x6d, 0xb6, 0x52, 0x74, 0x30, 0xdd, 0xdc, 0xac, 0x54, 0x9b, 0xb8, 0x76, 0xaf, 0xe2, 0x74, 0x5a, + 0x55, 0xe4, 0xe6, 0x46, 0xb9, 0xb9, 0xda, 0xeb, 0x6a, 0xf3, 0xc2, 0x3c, 0x06, 0x80, 0xc6, 0x64, + 0x73, 0x53, 0x67, 0x82, 0xf7, 0xf9, 0x9a, 0x35, 0xa7, 0xe7, 0xc1, 0xc5, 0x98, 0xe6, 0xc6, 0xe2, + 0xcd, 0x19, 0x52, 0x42, 0x03, 0x88, 0x95, 0x81, 0x31, 0x2d, 0xad, 0xb2, 0x52, 0xc9, 0xd4, 0x59, + 0xad, 0x16, 0x82, 0x5a, 0x45, 0xf8, 0x85, 0x2a, 0xc8, 0xc5, 0x65, 0xb2, 0x3f, 0xff, 0x15, 0xfd, + 0x79, 0x13, 0x35, 0x11, 0xf5, 0xeb, 0x51, 0x06, 0xa0, 0xd6, 0x30, 0x9b, 0x4d, 0xe4, 0x58, 0xb2, + 0x22, 0x57, 0x7b, 0x5d, 0x6d, 0xd6, 0xeb, 0x1c, 0xa9, 0x1b, 0x5e, 0x93, 0xd0, 0x06, 0xaf, 0xb8, + 0x2a, 0xa5, 0x35, 0x46, 0x4c, 0xc8, 0x7f, 0xac, 0x8d, 0xc3, 0x99, 0xc2, 0x45, 0xde, 0xc6, 0x61, + 0x91, 0x24, 0xe6, 0x28, 0xc5, 0x75, 0xdb, 0x8e, 0x4d, 0x6d, 0x93, 0xa2, 0x0f, 0xf1, 0x3d, 0xe4, + 0xdc, 0x44, 0x6d, 0x4c, 0x6c, 0xaa, 0xdc, 0x00, 0xe3, 0x04, 0x39, 0x75, 0x49, 0xce, 0x6a, 0xf0, + 0xb3, 0x12, 0xf2, 0xe1, 0xc4, 0x78, 0x86, 0xcf, 0x43, 0xca, 0x45, 0x90, 0xa2, 0x98, 0x53, 0x91, + 0xd1, 0x27, 0x7b, 0x5d, 0x2d, 0x23, 0xb0, 0x14, 0x43, 0x23, 0x45, 0xb1, 0x52, 0x06, 0xe3, 0x66, + 0x0b, 0x77, 0x1c, 0xca, 0x9b, 0x30, 0xbb, 0xb9, 0x58, 0xf0, 0x02, 0x60, 0x27, 0x42, 0xc1, 0x3b, + 0x11, 0x0a, 0x5b, 0xd8, 0x76, 0xe2, 0xa3, 0x40, 0x98, 0xf9, 0xa3, 0x40, 0xac, 0x94, 0x75, 0x30, + 0x5a, 0x37, 0xa9, 0xe9, 0x75, 0x64, 0xee, 0xb0, 0xab, 0x25, 0x7b, 0x5d, 0x2d, 0x2b, 0x2c, 0x98, + 0x86, 0xe3, 0x13, 0x06, 0x47, 0x95, 0xae, 0x7f, 0xf3, 0x40, 0x4b, 0xfc, 0xf5, 0x40, 0x4b, 0x30, + 0xf2, 0xbd, 0x1c, 0x19, 0xf1, 0xf9, 0x80, 0xf8, 0x41, 0x4c, 0xc2, 0xb7, 0x80, 0x36, 0x44, 0x25, + 0xe7, 0x89, 0x0a, 0xd2, 0x04, 0x7d, 0xde, 0x41, 0x4e, 0x0d, 0xf9, 0xe3, 0xc4, 0x5f, 0xc3, 0x1f, + 0xc7, 0x80, 0x5a, 0x26, 0xd6, 0xbb, 0xb6, 0x63, 0x36, 0xed, 0x2f, 0x84, 0xfd, 0xc7, 0x36, 0x6d, + 0xd4, 0x5d, 0x73, 0xdf, 0x6c, 0xbe, 0xea, 0x79, 0x70, 0x1d, 0xcc, 0xee, 0x4b, 0xe7, 0xec, 0x3c, + 0xc5, 0xbb, 0x24, 0x37, 0xba, 0x34, 0xb2, 0x32, 0xa1, 0x67, 0x18, 0x7f, 0x82, 0xb0, 0x99, 0x00, + 0xb3, 0xc3, 0x21, 0xca, 0xaa, 0x6c, 0xa7, 0x31, 0x5e, 0xdc, 0xd9, 0xbe, 0x76, 0x92, 0x6d, 0x73, + 0x0b, 0xa4, 0x5d, 0x54, 0x43, 0xf6, 0xde, 0xa0, 0x51, 0xe9, 0x6b, 0x8e, 0x19, 0x95, 0x3e, 0x44, + 0x29, 0x86, 0x58, 0x1d, 0xe7, 0x39, 0x9e, 0x0d, 0x36, 0x92, 0xfc, 0x06, 0x54, 0x87, 0xda, 0xeb, + 0xcc, 0x8b, 0x69, 0xaf, 0x33, 0x7b, 0xc8, 0x25, 0x36, 0x76, 0x72, 0x69, 0xde, 0x61, 0x4a, 0x70, + 0x06, 0x7a, 0x0a, 0x68, 0xf8, 0x10, 0x56, 0x15, 0x42, 0xb1, 0x6b, 0x5a, 0x48, 0x8c, 0xc9, 0x0c, + 0x37, 0x09, 0x55, 0x25, 0xac, 0x85, 0x46, 0xd6, 0x5b, 0xb2, 0x41, 0xc9, 0xa7, 0xb4, 0x49, 0xa8, + 0x37, 0x86, 0x1b, 0x26, 0x69, 0xe4, 0x00, 0x37, 0x0f, 0x4f, 0xe9, 0x28, 0x80, 0x4d, 0x69, 0x93, + 0x50, 0x3e, 0xa7, 0xdf, 0x33, 0x49, 0xa3, 0x74, 0x8d, 0x0f, 0x5b, 0x9f, 0x3c, 0xd6, 0xd8, 0xcb, + 0x41, 0x63, 0x0f, 0xe9, 0x3e, 0x78, 0x09, 0xc0, 0xe1, 0x5a, 0x39, 0x67, 0x7e, 0x48, 0x81, 0xd9, + 0x32, 0xb1, 0x3e, 0x6a, 0xd7, 0x4d, 0x8a, 0x76, 0xfc, 0x93, 0xec, 0x36, 0xc8, 0x98, 0x1d, 0xda, + 0xc0, 0xae, 0x4d, 0x0f, 0xfa, 0xaf, 0x4c, 0x52, 0x75, 0xcc, 0x95, 0x49, 0x62, 0x9e, 0xe7, 0x57, + 0x60, 0x80, 0x09, 0x07, 0xed, 0x57, 0xe4, 0xa9, 0x2c, 0x86, 0x4e, 0x31, 0xe0, 0x3b, 0xac, 0x1d, + 0x1e, 0x44, 0xd6, 0x41, 0xfb, 0x7e, 0x4a, 0xa5, 0x2b, 0xfc, 0x36, 0x25, 0xc3, 0x62, 0x24, 0xe6, + 0x02, 0x12, 0xa3, 0xf9, 0xc3, 0x5d, 0xb0, 0xd8, 0x27, 0x94, 0x13, 0x61, 0x39, 0xf6, 0x1b, 0x15, + 0x53, 0x21, 0xf2, 0x53, 0xbc, 0xdc, 0x7f, 0x34, 0xf3, 0xcc, 0x63, 0xc7, 0x2f, 0xfc, 0x29, 0x05, + 0xe6, 0xa4, 0xa3, 0x2d, 0x79, 0x66, 0x90, 0xd3, 0x2e, 0xc0, 0x67, 0x60, 0x9a, 0x51, 0x1c, 0x9c, + 0x62, 0xec, 0xde, 0x3a, 0xb2, 0x92, 0xd1, 0x37, 0x83, 0xa6, 0x8d, 0x01, 0x86, 0x87, 0x32, 0xe5, + 0xa0, 0xfd, 0x50, 0x6e, 0xa5, 0x42, 0x7f, 0x25, 0xce, 0xc7, 0x2b, 0x11, 0xc2, 0x43, 0x1b, 0x5c, + 0x18, 0x24, 0x7f, 0x19, 0xf5, 0x78, 0x98, 0x02, 0x8a, 0xf4, 0xc5, 0x6f, 0xd2, 0xdb, 0xce, 0x2e, + 0x3e, 0xed, 0x6a, 0x20, 0xc0, 0x28, 0xac, 0x88, 0x87, 0x82, 0xed, 0xec, 0x8a, 0x53, 0x38, 0xbb, + 0x79, 0x7e, 0xc0, 0x95, 0xdb, 0x8f, 0x59, 0x87, 0xde, 0x14, 0x3c, 0x17, 0x54, 0x2b, 0xd8, 0xc0, + 0x9b, 0x86, 0xec, 0x57, 0x26, 0x2d, 0x4a, 0xeb, 0xfd, 0x75, 0x59, 0x8c, 0xd7, 0x45, 0xa2, 0xa1, + 0xc5, 0x8f, 0xbe, 0x98, 0xf4, 0x65, 0xd4, 0xe4, 0xdb, 0x14, 0x38, 0x27, 0x3d, 0xdd, 0x71, 0xcd, + 0x5a, 0xd3, 0x7b, 0x52, 0x9c, 0x76, 0x59, 0xde, 0x06, 0x53, 0x98, 0x87, 0x53, 0x41, 0x8e, 0x59, + 0x6d, 0xa2, 0x3a, 0x2f, 0x4b, 0x5a, 0x5f, 0x0c, 0x58, 0x8f, 0xea, 0xa1, 0x31, 0x29, 0x04, 0xef, + 0x88, 0x75, 0xa9, 0xd8, 0xcf, 0xf8, 0x85, 0x38, 0xe3, 0xe1, 0x8c, 0xa1, 0x06, 0x2e, 0x0e, 0x54, + 0xc8, 0x71, 0xfe, 0x77, 0x32, 0x34, 0xce, 0xcb, 0x88, 0x9a, 0xec, 0x7a, 0x74, 0xda, 0x44, 0x15, + 0x41, 0xba, 0xe5, 0x85, 0xe2, 0x3d, 0x7f, 0x43, 0x87, 0xbd, 0xaf, 0x81, 0x86, 0x04, 0x9d, 0x68, + 0x56, 0xfb, 0xc9, 0x45, 0x66, 0xb5, 0x2f, 0x7c, 0x19, 0x7d, 0xf8, 0x8b, 0x78, 0xaa, 0x78, 0x87, + 0x82, 0xe9, 0x9a, 0xad, 0x17, 0x3b, 0xa6, 0xb7, 0xc0, 0x78, 0x9b, 0xef, 0xea, 0x3d, 0xa8, 0x73, + 0xfd, 0xbf, 0x6e, 0xe1, 0x35, 0x7c, 0x41, 0x13, 0x16, 0xd0, 0xf0, 0x4c, 0xc5, 0xb3, 0x2c, 0xca, + 0xdc, 0x7c, 0xdf, 0x29, 0x27, 0x6c, 0xc4, 0xe3, 0x23, 0x2c, 0xf2, 0x59, 0xdb, 0xfc, 0x27, 0x0d, + 0x46, 0xca, 0xc4, 0x52, 0x3e, 0x01, 0xd9, 0xf0, 0x87, 0x94, 0xa5, 0xfe, 0x88, 0xa2, 0x9f, 0x1d, + 0xd4, 0x95, 0x67, 0x21, 0x64, 0x61, 0xee, 0x82, 0x89, 0xc8, 0x47, 0x89, 0xe5, 0x81, 0x96, 0x61, + 0x88, 0xba, 0xfa, 0x4c, 0x88, 0xdc, 0xbd, 0x02, 0x26, 0xa3, 0x6f, 0x7c, 0x38, 0xd0, 0x36, 0x82, + 0x51, 0xd7, 0x9e, 0x8d, 0x09, 0x87, 0x1f, 0x79, 0xb3, 0x0e, 0x0e, 0x3f, 0x0c, 0x19, 0x12, 0xfe, + 0xa0, 0xc7, 0x9f, 0x42, 0xc1, 0xdc, 0xc0, 0x87, 0xdf, 0xe0, 0x2d, 0x06, 0x41, 0xd5, 0x8d, 0x13, + 0x43, 0xa5, 0xd7, 0x2f, 0xc1, 0xc2, 0xb0, 0x97, 0xcc, 0xfa, 0xc0, 0xdd, 0x86, 0xa0, 0xd5, 0x37, + 0xfe, 0x0f, 0x5a, 0xba, 0xaf, 0x82, 0xa9, 0xd8, 0x2d, 0xf4, 0xb5, 0x81, 0xfb, 0x44, 0x41, 0xea, + 0x95, 0x13, 0x80, 0xa4, 0x8f, 0x7b, 0x60, 0xb6, 0xff, 0xae, 0x75, 0xf9, 0x98, 0x1d, 0x42, 0x38, + 0xb5, 0x70, 0x32, 0x9c, 0x74, 0x86, 0xc0, 0x74, 0xfc, 0x22, 0x71, 0xe9, 0x98, 0x2d, 0x24, 0x4a, + 0x5d, 0x3f, 0x09, 0xaa, 0x9f, 0x37, 0x39, 0xee, 0x8f, 0xe3, 0xcd, 0x07, 0x1d, 0xcb, 0x5b, 0xdf, + 0x18, 0xbd, 0x0b, 0x26, 0x22, 0x73, 0x6f, 0xf9, 0x38, 0xd2, 0x39, 0x64, 0x48, 0xbb, 0x0f, 0x1a, + 0x37, 0xea, 0xd8, 0x57, 0xec, 0x36, 0xa2, 0xdf, 0x3e, 0xfc, 0x33, 0x9f, 0x38, 0x7c, 0x92, 0x4f, + 0x3e, 0x7e, 0x92, 0x4f, 0xfe, 0xf1, 0x24, 0x9f, 0xfc, 0xfe, 0x28, 0x9f, 0x78, 0x7c, 0x94, 0x4f, + 0xfc, 0x7e, 0x94, 0x4f, 0x7c, 0xba, 0x6e, 0xd9, 0xb4, 0xd1, 0xa9, 0x16, 0x6a, 0xb8, 0x55, 0xb4, + 0x79, 0x1b, 0x5f, 0x6d, 0x9a, 0x55, 0x52, 0xbc, 0xb3, 0xc3, 0xbf, 0x06, 0xdf, 0xf7, 0xbf, 0x07, + 0xf3, 0x8f, 0xc1, 0xd5, 0x71, 0xfe, 0x35, 0xf8, 0xda, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xac, + 0x23, 0x4f, 0x3f, 0xd7, 0x16, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -1270,8 +1165,6 @@ type MsgClient interface { InitiateTokenDeposit(ctx context.Context, in *MsgInitiateTokenDeposit, opts ...grpc.CallOption) (*MsgInitiateTokenDepositResponse, error) // FinalizeTokenWithdrawal defines a user facing l2 => l1 token transfer interface. FinalizeTokenWithdrawal(ctx context.Context, in *MsgFinalizeTokenWithdrawal, opts ...grpc.CallOption) (*MsgFinalizeTokenWithdrawalResponse, error) - // ForceTokenWithdrwal defines a force token withdrawal interface. - ForceTokenWithdrwal(ctx context.Context, in *MsgForceTokenWithdrawal, opts ...grpc.CallOption) (*MsgForceTokenWithdrawalResponse, error) // UpdateProposer defines a rpc handler method for MsgUpdateProposer. UpdateProposer(ctx context.Context, in *MsgUpdateProposer, opts ...grpc.CallOption) (*MsgUpdateProposerResponse, error) // UpdateChallengers defines a rpc handler method for MsgUpdateChallengers. @@ -1347,15 +1240,6 @@ func (c *msgClient) FinalizeTokenWithdrawal(ctx context.Context, in *MsgFinalize return out, nil } -func (c *msgClient) ForceTokenWithdrwal(ctx context.Context, in *MsgForceTokenWithdrawal, opts ...grpc.CallOption) (*MsgForceTokenWithdrawalResponse, error) { - out := new(MsgForceTokenWithdrawalResponse) - err := c.cc.Invoke(ctx, "/opinit.ophost.v1.Msg/ForceTokenWithdrwal", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *msgClient) UpdateProposer(ctx context.Context, in *MsgUpdateProposer, opts ...grpc.CallOption) (*MsgUpdateProposerResponse, error) { out := new(MsgUpdateProposerResponse) err := c.cc.Invoke(ctx, "/opinit.ophost.v1.Msg/UpdateProposer", in, out, opts...) @@ -1415,8 +1299,6 @@ type MsgServer interface { InitiateTokenDeposit(context.Context, *MsgInitiateTokenDeposit) (*MsgInitiateTokenDepositResponse, error) // FinalizeTokenWithdrawal defines a user facing l2 => l1 token transfer interface. FinalizeTokenWithdrawal(context.Context, *MsgFinalizeTokenWithdrawal) (*MsgFinalizeTokenWithdrawalResponse, error) - // ForceTokenWithdrwal defines a force token withdrawal interface. - ForceTokenWithdrwal(context.Context, *MsgForceTokenWithdrawal) (*MsgForceTokenWithdrawalResponse, error) // UpdateProposer defines a rpc handler method for MsgUpdateProposer. UpdateProposer(context.Context, *MsgUpdateProposer) (*MsgUpdateProposerResponse, error) // UpdateChallengers defines a rpc handler method for MsgUpdateChallengers. @@ -1452,9 +1334,6 @@ func (*UnimplementedMsgServer) InitiateTokenDeposit(ctx context.Context, req *Ms func (*UnimplementedMsgServer) FinalizeTokenWithdrawal(ctx context.Context, req *MsgFinalizeTokenWithdrawal) (*MsgFinalizeTokenWithdrawalResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method FinalizeTokenWithdrawal not implemented") } -func (*UnimplementedMsgServer) ForceTokenWithdrwal(ctx context.Context, req *MsgForceTokenWithdrawal) (*MsgForceTokenWithdrawalResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ForceTokenWithdrwal not implemented") -} func (*UnimplementedMsgServer) UpdateProposer(ctx context.Context, req *MsgUpdateProposer) (*MsgUpdateProposerResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method UpdateProposer not implemented") } @@ -1583,24 +1462,6 @@ func _Msg_FinalizeTokenWithdrawal_Handler(srv interface{}, ctx context.Context, return interceptor(ctx, in, info, handler) } -func _Msg_ForceTokenWithdrwal_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MsgForceTokenWithdrawal) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).ForceTokenWithdrwal(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/opinit.ophost.v1.Msg/ForceTokenWithdrwal", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).ForceTokenWithdrwal(ctx, req.(*MsgForceTokenWithdrawal)) - } - return interceptor(ctx, in, info, handler) -} - func _Msg_UpdateProposer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(MsgUpdateProposer) if err := dec(in); err != nil { @@ -1719,10 +1580,6 @@ var _Msg_serviceDesc = grpc.ServiceDesc{ MethodName: "FinalizeTokenWithdrawal", Handler: _Msg_FinalizeTokenWithdrawal_Handler, }, - { - MethodName: "ForceTokenWithdrwal", - Handler: _Msg_ForceTokenWithdrwal_Handler, - }, { MethodName: "UpdateProposer", Handler: _Msg_UpdateProposer_Handler, @@ -2221,139 +2078,6 @@ func (m *MsgFinalizeTokenWithdrawalResponse) MarshalToSizedBuffer(dAtA []byte) ( return len(dAtA) - i, nil } -func (m *MsgForceTokenWithdrawal) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgForceTokenWithdrawal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgForceTokenWithdrawal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.LastBlockHash) > 0 { - i -= len(m.LastBlockHash) - copy(dAtA[i:], m.LastBlockHash) - i = encodeVarintTx(dAtA, i, uint64(len(m.LastBlockHash))) - i-- - dAtA[i] = 0x62 - } - if len(m.StorageRoot) > 0 { - i -= len(m.StorageRoot) - copy(dAtA[i:], m.StorageRoot) - i = encodeVarintTx(dAtA, i, uint64(len(m.StorageRoot))) - i-- - dAtA[i] = 0x5a - } - if len(m.Version) > 0 { - i -= len(m.Version) - copy(dAtA[i:], m.Version) - i = encodeVarintTx(dAtA, i, uint64(len(m.Version))) - i-- - dAtA[i] = 0x52 - } - { - size, err := m.AppHashProof.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x4a - if len(m.AppHash) > 0 { - i -= len(m.AppHash) - copy(dAtA[i:], m.AppHash) - i = encodeVarintTx(dAtA, i, uint64(len(m.AppHash))) - i-- - dAtA[i] = 0x42 - } - { - size, err := m.CommitmentProof.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x3a - { - size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintTx(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0x2a - } - if m.Sequence != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Sequence)) - i-- - dAtA[i] = 0x20 - } - if m.OutputIndex != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.OutputIndex)) - i-- - dAtA[i] = 0x18 - } - if m.BridgeId != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.BridgeId)) - i-- - dAtA[i] = 0x10 - } - if len(m.Receiver) > 0 { - i -= len(m.Receiver) - copy(dAtA[i:], m.Receiver) - i = encodeVarintTx(dAtA, i, uint64(len(m.Receiver))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgForceTokenWithdrawalResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgForceTokenWithdrawalResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgForceTokenWithdrawalResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - func (m *MsgUpdateProposer) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -3015,64 +2739,42 @@ func (m *MsgFinalizeTokenWithdrawalResponse) Size() (n int) { return n } -func (m *MsgForceTokenWithdrawal) Size() (n int) { +func (m *MsgUpdateProposer) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Receiver) + l = len(m.Authority) if l > 0 { n += 1 + l + sovTx(uint64(l)) } if m.BridgeId != 0 { n += 1 + sovTx(uint64(m.BridgeId)) } - if m.OutputIndex != 0 { - n += 1 + sovTx(uint64(m.OutputIndex)) - } - if m.Sequence != 0 { - n += 1 + sovTx(uint64(m.Sequence)) - } - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = m.Amount.Size() - n += 1 + l + sovTx(uint64(l)) - l = m.CommitmentProof.Size() - n += 1 + l + sovTx(uint64(l)) - l = len(m.AppHash) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = m.AppHashProof.Size() - n += 1 + l + sovTx(uint64(l)) - l = len(m.Version) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.StorageRoot) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.LastBlockHash) + l = len(m.NewProposer) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgForceTokenWithdrawalResponse) Size() (n int) { +func (m *MsgUpdateProposerResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l + if m.OutputIndex != 0 { + n += 1 + sovTx(uint64(m.OutputIndex)) + } + if m.L2BlockNumber != 0 { + n += 1 + sovTx(uint64(m.L2BlockNumber)) + } return n } -func (m *MsgUpdateProposer) Size() (n int) { +func (m *MsgUpdateChallengers) Size() (n int) { if m == nil { return 0 } @@ -3085,14 +2787,16 @@ func (m *MsgUpdateProposer) Size() (n int) { if m.BridgeId != 0 { n += 1 + sovTx(uint64(m.BridgeId)) } - l = len(m.NewProposer) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.NewChallengers) > 0 { + for _, s := range m.NewChallengers { + l = len(s) + n += 1 + l + sovTx(uint64(l)) + } } return n } -func (m *MsgUpdateProposerResponse) Size() (n int) { +func (m *MsgUpdateChallengersResponse) Size() (n int) { if m == nil { return 0 } @@ -3107,44 +2811,7 @@ func (m *MsgUpdateProposerResponse) Size() (n int) { return n } -func (m *MsgUpdateChallengers) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Authority) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if m.BridgeId != 0 { - n += 1 + sovTx(uint64(m.BridgeId)) - } - if len(m.NewChallengers) > 0 { - for _, s := range m.NewChallengers { - l = len(s) - n += 1 + l + sovTx(uint64(l)) - } - } - return n -} - -func (m *MsgUpdateChallengersResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.OutputIndex != 0 { - n += 1 + sovTx(uint64(m.OutputIndex)) - } - if m.L2BlockNumber != 0 { - n += 1 + sovTx(uint64(m.L2BlockNumber)) - } - return n -} - -func (m *MsgUpdateBatchInfo) Size() (n int) { +func (m *MsgUpdateBatchInfo) Size() (n int) { if m == nil { return 0 } @@ -4691,462 +4358,6 @@ func (m *MsgFinalizeTokenWithdrawalResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgForceTokenWithdrawal) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgForceTokenWithdrawal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgForceTokenWithdrawal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Receiver", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Receiver = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field BridgeId", wireType) - } - m.BridgeId = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.BridgeId |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field OutputIndex", wireType) - } - m.OutputIndex = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.OutputIndex |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Sequence", wireType) - } - m.Sequence = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Sequence |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CommitmentProof", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.CommitmentProof.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppHash", wireType) - } - var byteLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AppHash = append(m.AppHash[:0], dAtA[iNdEx:postIndex]...) - if m.AppHash == nil { - m.AppHash = []byte{} - } - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppHashProof", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.AppHashProof.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType) - } - var byteLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Version = append(m.Version[:0], dAtA[iNdEx:postIndex]...) - if m.Version == nil { - m.Version = []byte{} - } - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field StorageRoot", wireType) - } - var byteLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.StorageRoot = append(m.StorageRoot[:0], dAtA[iNdEx:postIndex]...) - if m.StorageRoot == nil { - m.StorageRoot = []byte{} - } - iNdEx = postIndex - case 12: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LastBlockHash", wireType) - } - var byteLen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - byteLen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if byteLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + byteLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.LastBlockHash = append(m.LastBlockHash[:0], dAtA[iNdEx:postIndex]...) - if m.LastBlockHash == nil { - m.LastBlockHash = []byte{} - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgForceTokenWithdrawalResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgForceTokenWithdrawalResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgForceTokenWithdrawalResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *MsgUpdateProposer) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/ophost/types/tx_test.go b/x/ophost/types/tx_test.go index c412c66a..5574c560 100644 --- a/x/ophost/types/tx_test.go +++ b/x/ophost/types/tx_test.go @@ -4,11 +4,9 @@ import ( "bytes" "testing" - v1 "github.com/cometbft/cometbft/api/cometbft/crypto/v1" "github.com/stretchr/testify/require" "github.com/cosmos/cosmos-sdk/codec/address" - sdk "github.com/cosmos/cosmos-sdk/types" ) func TestMsgRecordBatch_Validate(t *testing.T) { @@ -28,110 +26,3 @@ func TestMsgRecordBatch_Validate(t *testing.T) { invalidMsg = NewMsgRecordBatch(addr, 123, nil) require.Error(t, invalidMsg.Validate(ac)) } - -func TestMsgForceTokenWithdrawal(t *testing.T) { - ac := address.NewBech32Codec("init") - addr, err := ac.BytesToString(bytes.Repeat([]byte{1}, 20)) - require.NoError(t, err) - - // Valid input - validMsg := NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - require.NoError(t, validMsg.Validate(ac)) - - // Empty app hash - invalidMsg := NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - nil, - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - require.Error(t, invalidMsg.Validate(ac)) - - // Empty sender - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 1, "", addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - require.Error(t, invalidMsg.Validate(ac)) - - // Empty receiver - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, "", sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - require.Error(t, invalidMsg.Validate(ac)) - - // Empty amount - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, addr, sdk.NewInt64Coin("test", 0), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - require.Error(t, invalidMsg.Validate(ac)) - - // Invalid version - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - invalidMsg.Version = []byte{1, 2} - require.Error(t, invalidMsg.Validate(ac)) - - // Empty storage root - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, nil, bytes.Repeat([]byte{1}, 32), - ) - require.Error(t, invalidMsg.Validate(ac)) - - // Empty latest block hash - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), nil, - ) - require.Error(t, invalidMsg.Validate(ac)) - - // Empty commitment proof - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 1, addr, addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - require.Error(t, invalidMsg.Validate(ac)) - - // Empty l2 sequence - invalidMsg = NewMsgForceTokenWithdrawal( - 123, 456, - 0, addr, addr, sdk.NewInt64Coin("test", 100), v1.ProofOps{Ops: []v1.ProofOp{{}}}, - bytes.Repeat([]byte{1}, 32), - v1.Proof{Total: 1, Index: 1, LeafHash: bytes.Repeat([]byte{1}, 32), Aunts: [][]byte{bytes.Repeat([]byte{2}, 32)}}, - []byte{1}, bytes.Repeat([]byte{1}, 32), bytes.Repeat([]byte{1}, 32), - ) - require.Error(t, invalidMsg.Validate(ac)) -}