github.com/InjectiveLabs/sdk-go@v1.53.0/chain/peggy/types/types.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: injective/peggy/v1/types.proto
     3  
     4  package types
     5  
     6  import (
     7  	cosmossdk_io_math "cosmossdk.io/math"
     8  	fmt "fmt"
     9  	_ "github.com/cosmos/gogoproto/gogoproto"
    10  	proto "github.com/cosmos/gogoproto/proto"
    11  	io "io"
    12  	math "math"
    13  	math_bits "math/bits"
    14  )
    15  
    16  // Reference imports to suppress errors if they are not otherwise used.
    17  var _ = proto.Marshal
    18  var _ = fmt.Errorf
    19  var _ = math.Inf
    20  
    21  // This is a compile-time assertion to ensure that this generated file
    22  // is compatible with the proto package it is being compiled against.
    23  // A compilation error at this line likely means your copy of the
    24  // proto package needs to be updated.
    25  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    26  
    27  // BridgeValidator represents a validator's ETH address and its power
    28  type BridgeValidator struct {
    29  	Power           uint64 `protobuf:"varint,1,opt,name=power,proto3" json:"power,omitempty"`
    30  	EthereumAddress string `protobuf:"bytes,2,opt,name=ethereum_address,json=ethereumAddress,proto3" json:"ethereum_address,omitempty"`
    31  }
    32  
    33  func (m *BridgeValidator) Reset()         { *m = BridgeValidator{} }
    34  func (m *BridgeValidator) String() string { return proto.CompactTextString(m) }
    35  func (*BridgeValidator) ProtoMessage()    {}
    36  func (*BridgeValidator) Descriptor() ([]byte, []int) {
    37  	return fileDescriptor_b641943ad411b503, []int{0}
    38  }
    39  func (m *BridgeValidator) XXX_Unmarshal(b []byte) error {
    40  	return m.Unmarshal(b)
    41  }
    42  func (m *BridgeValidator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    43  	if deterministic {
    44  		return xxx_messageInfo_BridgeValidator.Marshal(b, m, deterministic)
    45  	} else {
    46  		b = b[:cap(b)]
    47  		n, err := m.MarshalToSizedBuffer(b)
    48  		if err != nil {
    49  			return nil, err
    50  		}
    51  		return b[:n], nil
    52  	}
    53  }
    54  func (m *BridgeValidator) XXX_Merge(src proto.Message) {
    55  	xxx_messageInfo_BridgeValidator.Merge(m, src)
    56  }
    57  func (m *BridgeValidator) XXX_Size() int {
    58  	return m.Size()
    59  }
    60  func (m *BridgeValidator) XXX_DiscardUnknown() {
    61  	xxx_messageInfo_BridgeValidator.DiscardUnknown(m)
    62  }
    63  
    64  var xxx_messageInfo_BridgeValidator proto.InternalMessageInfo
    65  
    66  func (m *BridgeValidator) GetPower() uint64 {
    67  	if m != nil {
    68  		return m.Power
    69  	}
    70  	return 0
    71  }
    72  
    73  func (m *BridgeValidator) GetEthereumAddress() string {
    74  	if m != nil {
    75  		return m.EthereumAddress
    76  	}
    77  	return ""
    78  }
    79  
    80  // Valset is the Ethereum Bridge Multsig Set, each peggy validator also
    81  // maintains an ETH key to sign messages, these are used to check signatures on
    82  // ETH because of the significant gas savings
    83  type Valset struct {
    84  	Nonce        uint64                `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
    85  	Members      []*BridgeValidator    `protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty"`
    86  	Height       uint64                `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
    87  	RewardAmount cosmossdk_io_math.Int `protobuf:"bytes,4,opt,name=reward_amount,json=rewardAmount,proto3,customtype=cosmossdk.io/math.Int" json:"reward_amount"`
    88  	// the reward token in it's Ethereum hex address representation
    89  	RewardToken string `protobuf:"bytes,5,opt,name=reward_token,json=rewardToken,proto3" json:"reward_token,omitempty"`
    90  }
    91  
    92  func (m *Valset) Reset()         { *m = Valset{} }
    93  func (m *Valset) String() string { return proto.CompactTextString(m) }
    94  func (*Valset) ProtoMessage()    {}
    95  func (*Valset) Descriptor() ([]byte, []int) {
    96  	return fileDescriptor_b641943ad411b503, []int{1}
    97  }
    98  func (m *Valset) XXX_Unmarshal(b []byte) error {
    99  	return m.Unmarshal(b)
   100  }
   101  func (m *Valset) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   102  	if deterministic {
   103  		return xxx_messageInfo_Valset.Marshal(b, m, deterministic)
   104  	} else {
   105  		b = b[:cap(b)]
   106  		n, err := m.MarshalToSizedBuffer(b)
   107  		if err != nil {
   108  			return nil, err
   109  		}
   110  		return b[:n], nil
   111  	}
   112  }
   113  func (m *Valset) XXX_Merge(src proto.Message) {
   114  	xxx_messageInfo_Valset.Merge(m, src)
   115  }
   116  func (m *Valset) XXX_Size() int {
   117  	return m.Size()
   118  }
   119  func (m *Valset) XXX_DiscardUnknown() {
   120  	xxx_messageInfo_Valset.DiscardUnknown(m)
   121  }
   122  
   123  var xxx_messageInfo_Valset proto.InternalMessageInfo
   124  
   125  func (m *Valset) GetNonce() uint64 {
   126  	if m != nil {
   127  		return m.Nonce
   128  	}
   129  	return 0
   130  }
   131  
   132  func (m *Valset) GetMembers() []*BridgeValidator {
   133  	if m != nil {
   134  		return m.Members
   135  	}
   136  	return nil
   137  }
   138  
   139  func (m *Valset) GetHeight() uint64 {
   140  	if m != nil {
   141  		return m.Height
   142  	}
   143  	return 0
   144  }
   145  
   146  func (m *Valset) GetRewardToken() string {
   147  	if m != nil {
   148  		return m.RewardToken
   149  	}
   150  	return ""
   151  }
   152  
   153  // LastObservedEthereumBlockHeight stores the last observed
   154  // Ethereum block height along with the Cosmos block height that
   155  // it was observed at. These two numbers can be used to project
   156  // outward and always produce batches with timeouts in the future
   157  // even if no Ethereum block height has been relayed for a long time
   158  type LastObservedEthereumBlockHeight struct {
   159  	CosmosBlockHeight   uint64 `protobuf:"varint,1,opt,name=cosmos_block_height,json=cosmosBlockHeight,proto3" json:"cosmos_block_height,omitempty"`
   160  	EthereumBlockHeight uint64 `protobuf:"varint,2,opt,name=ethereum_block_height,json=ethereumBlockHeight,proto3" json:"ethereum_block_height,omitempty"`
   161  }
   162  
   163  func (m *LastObservedEthereumBlockHeight) Reset()         { *m = LastObservedEthereumBlockHeight{} }
   164  func (m *LastObservedEthereumBlockHeight) String() string { return proto.CompactTextString(m) }
   165  func (*LastObservedEthereumBlockHeight) ProtoMessage()    {}
   166  func (*LastObservedEthereumBlockHeight) Descriptor() ([]byte, []int) {
   167  	return fileDescriptor_b641943ad411b503, []int{2}
   168  }
   169  func (m *LastObservedEthereumBlockHeight) XXX_Unmarshal(b []byte) error {
   170  	return m.Unmarshal(b)
   171  }
   172  func (m *LastObservedEthereumBlockHeight) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   173  	if deterministic {
   174  		return xxx_messageInfo_LastObservedEthereumBlockHeight.Marshal(b, m, deterministic)
   175  	} else {
   176  		b = b[:cap(b)]
   177  		n, err := m.MarshalToSizedBuffer(b)
   178  		if err != nil {
   179  			return nil, err
   180  		}
   181  		return b[:n], nil
   182  	}
   183  }
   184  func (m *LastObservedEthereumBlockHeight) XXX_Merge(src proto.Message) {
   185  	xxx_messageInfo_LastObservedEthereumBlockHeight.Merge(m, src)
   186  }
   187  func (m *LastObservedEthereumBlockHeight) XXX_Size() int {
   188  	return m.Size()
   189  }
   190  func (m *LastObservedEthereumBlockHeight) XXX_DiscardUnknown() {
   191  	xxx_messageInfo_LastObservedEthereumBlockHeight.DiscardUnknown(m)
   192  }
   193  
   194  var xxx_messageInfo_LastObservedEthereumBlockHeight proto.InternalMessageInfo
   195  
   196  func (m *LastObservedEthereumBlockHeight) GetCosmosBlockHeight() uint64 {
   197  	if m != nil {
   198  		return m.CosmosBlockHeight
   199  	}
   200  	return 0
   201  }
   202  
   203  func (m *LastObservedEthereumBlockHeight) GetEthereumBlockHeight() uint64 {
   204  	if m != nil {
   205  		return m.EthereumBlockHeight
   206  	}
   207  	return 0
   208  }
   209  
   210  // LastClaimEvent stores last claim event details of validator.
   211  type LastClaimEvent struct {
   212  	EthereumEventNonce  uint64 `protobuf:"varint,1,opt,name=ethereum_event_nonce,json=ethereumEventNonce,proto3" json:"ethereum_event_nonce,omitempty"`
   213  	EthereumEventHeight uint64 `protobuf:"varint,2,opt,name=ethereum_event_height,json=ethereumEventHeight,proto3" json:"ethereum_event_height,omitempty"`
   214  }
   215  
   216  func (m *LastClaimEvent) Reset()         { *m = LastClaimEvent{} }
   217  func (m *LastClaimEvent) String() string { return proto.CompactTextString(m) }
   218  func (*LastClaimEvent) ProtoMessage()    {}
   219  func (*LastClaimEvent) Descriptor() ([]byte, []int) {
   220  	return fileDescriptor_b641943ad411b503, []int{3}
   221  }
   222  func (m *LastClaimEvent) XXX_Unmarshal(b []byte) error {
   223  	return m.Unmarshal(b)
   224  }
   225  func (m *LastClaimEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   226  	if deterministic {
   227  		return xxx_messageInfo_LastClaimEvent.Marshal(b, m, deterministic)
   228  	} else {
   229  		b = b[:cap(b)]
   230  		n, err := m.MarshalToSizedBuffer(b)
   231  		if err != nil {
   232  			return nil, err
   233  		}
   234  		return b[:n], nil
   235  	}
   236  }
   237  func (m *LastClaimEvent) XXX_Merge(src proto.Message) {
   238  	xxx_messageInfo_LastClaimEvent.Merge(m, src)
   239  }
   240  func (m *LastClaimEvent) XXX_Size() int {
   241  	return m.Size()
   242  }
   243  func (m *LastClaimEvent) XXX_DiscardUnknown() {
   244  	xxx_messageInfo_LastClaimEvent.DiscardUnknown(m)
   245  }
   246  
   247  var xxx_messageInfo_LastClaimEvent proto.InternalMessageInfo
   248  
   249  func (m *LastClaimEvent) GetEthereumEventNonce() uint64 {
   250  	if m != nil {
   251  		return m.EthereumEventNonce
   252  	}
   253  	return 0
   254  }
   255  
   256  func (m *LastClaimEvent) GetEthereumEventHeight() uint64 {
   257  	if m != nil {
   258  		return m.EthereumEventHeight
   259  	}
   260  	return 0
   261  }
   262  
   263  // This records the relationship between an ERC20 token and the denom
   264  // of the corresponding Cosmos originated asset
   265  type ERC20ToDenom struct {
   266  	Erc20 string `protobuf:"bytes,1,opt,name=erc20,proto3" json:"erc20,omitempty"`
   267  	Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"`
   268  }
   269  
   270  func (m *ERC20ToDenom) Reset()         { *m = ERC20ToDenom{} }
   271  func (m *ERC20ToDenom) String() string { return proto.CompactTextString(m) }
   272  func (*ERC20ToDenom) ProtoMessage()    {}
   273  func (*ERC20ToDenom) Descriptor() ([]byte, []int) {
   274  	return fileDescriptor_b641943ad411b503, []int{4}
   275  }
   276  func (m *ERC20ToDenom) XXX_Unmarshal(b []byte) error {
   277  	return m.Unmarshal(b)
   278  }
   279  func (m *ERC20ToDenom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   280  	if deterministic {
   281  		return xxx_messageInfo_ERC20ToDenom.Marshal(b, m, deterministic)
   282  	} else {
   283  		b = b[:cap(b)]
   284  		n, err := m.MarshalToSizedBuffer(b)
   285  		if err != nil {
   286  			return nil, err
   287  		}
   288  		return b[:n], nil
   289  	}
   290  }
   291  func (m *ERC20ToDenom) XXX_Merge(src proto.Message) {
   292  	xxx_messageInfo_ERC20ToDenom.Merge(m, src)
   293  }
   294  func (m *ERC20ToDenom) XXX_Size() int {
   295  	return m.Size()
   296  }
   297  func (m *ERC20ToDenom) XXX_DiscardUnknown() {
   298  	xxx_messageInfo_ERC20ToDenom.DiscardUnknown(m)
   299  }
   300  
   301  var xxx_messageInfo_ERC20ToDenom proto.InternalMessageInfo
   302  
   303  func (m *ERC20ToDenom) GetErc20() string {
   304  	if m != nil {
   305  		return m.Erc20
   306  	}
   307  	return ""
   308  }
   309  
   310  func (m *ERC20ToDenom) GetDenom() string {
   311  	if m != nil {
   312  		return m.Denom
   313  	}
   314  	return ""
   315  }
   316  
   317  func init() {
   318  	proto.RegisterType((*BridgeValidator)(nil), "injective.peggy.v1.BridgeValidator")
   319  	proto.RegisterType((*Valset)(nil), "injective.peggy.v1.Valset")
   320  	proto.RegisterType((*LastObservedEthereumBlockHeight)(nil), "injective.peggy.v1.LastObservedEthereumBlockHeight")
   321  	proto.RegisterType((*LastClaimEvent)(nil), "injective.peggy.v1.LastClaimEvent")
   322  	proto.RegisterType((*ERC20ToDenom)(nil), "injective.peggy.v1.ERC20ToDenom")
   323  }
   324  
   325  func init() { proto.RegisterFile("injective/peggy/v1/types.proto", fileDescriptor_b641943ad411b503) }
   326  
   327  var fileDescriptor_b641943ad411b503 = []byte{
   328  	// 490 bytes of a gzipped FileDescriptorProto
   329  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x53, 0xcf, 0x6f, 0xd3, 0x30,
   330  	0x14, 0x6e, 0xf6, 0xa3, 0x68, 0xde, 0x60, 0xe0, 0x75, 0x28, 0x42, 0x22, 0x1d, 0xe5, 0x52, 0x0e,
   331  	0x24, 0x5d, 0xb9, 0x21, 0x71, 0x58, 0x46, 0x25, 0x26, 0x26, 0x90, 0xa2, 0x69, 0x07, 0x2e, 0x91,
   332  	0x93, 0x3c, 0x25, 0xa1, 0xb1, 0x5d, 0xd9, 0x6e, 0xa6, 0xfd, 0x01, 0xdc, 0xf9, 0xb3, 0x76, 0xdc,
   333  	0x11, 0x21, 0x34, 0xa1, 0xf6, 0x1f, 0x41, 0xb6, 0x93, 0xaa, 0x30, 0x6e, 0xf9, 0xbe, 0xe7, 0xef,
   334  	0x7d, 0x5f, 0x9e, 0x9f, 0x91, 0x57, 0xb2, 0xaf, 0x90, 0xaa, 0xb2, 0x86, 0x60, 0x06, 0x79, 0x7e,
   335  	0x1d, 0xd4, 0xc7, 0x81, 0xba, 0x9e, 0x81, 0xf4, 0x67, 0x82, 0x2b, 0x8e, 0xf1, 0xaa, 0xee, 0x9b,
   336  	0xba, 0x5f, 0x1f, 0x3f, 0xeb, 0xe5, 0x3c, 0xe7, 0xa6, 0x1c, 0xe8, 0x2f, 0x7b, 0x72, 0x10, 0xa1,
   337  	0xfd, 0x50, 0x94, 0x59, 0x0e, 0x97, 0xa4, 0x2a, 0x33, 0xa2, 0xb8, 0xc0, 0x3d, 0xb4, 0x3d, 0xe3,
   338  	0x57, 0x20, 0x5c, 0xe7, 0xc8, 0x19, 0x6e, 0x45, 0x16, 0xe0, 0x57, 0xe8, 0x31, 0xa8, 0x02, 0x04,
   339  	0xcc, 0x69, 0x4c, 0xb2, 0x4c, 0x80, 0x94, 0xee, 0xc6, 0x91, 0x33, 0xdc, 0x89, 0xf6, 0x5b, 0xfe,
   340  	0xc4, 0xd2, 0x83, 0x5f, 0x0e, 0xea, 0x5e, 0x92, 0x4a, 0x82, 0xd2, 0xbd, 0x18, 0x67, 0x29, 0xb4,
   341  	0xbd, 0x0c, 0xc0, 0xef, 0xd0, 0x03, 0x0a, 0x34, 0x01, 0xa1, 0x5b, 0x6c, 0x0e, 0x77, 0xc7, 0x2f,
   342  	0xfd, 0xfb, 0x81, 0xfd, 0x7f, 0x72, 0x45, 0xad, 0x06, 0x3f, 0x45, 0xdd, 0x02, 0xca, 0xbc, 0x50,
   343  	0xee, 0xa6, 0xe9, 0xda, 0x20, 0x1c, 0xa2, 0x87, 0x02, 0xae, 0x88, 0xc8, 0x62, 0x42, 0xf9, 0x9c,
   344  	0x29, 0x77, 0x4b, 0xe7, 0x0b, 0x9f, 0xdf, 0xdc, 0xf5, 0x3b, 0x3f, 0xef, 0xfa, 0x87, 0x29, 0x97,
   345  	0x94, 0x4b, 0x99, 0x4d, 0xfd, 0x92, 0x07, 0x94, 0xa8, 0xc2, 0x3f, 0x63, 0x2a, 0xda, 0xb3, 0x9a,
   346  	0x13, 0x23, 0xc1, 0x2f, 0x50, 0x83, 0x63, 0xc5, 0xa7, 0xc0, 0xdc, 0x6d, 0xf3, 0x8b, 0xbb, 0x96,
   347  	0xbb, 0xd0, 0xd4, 0xe0, 0x9b, 0x83, 0xfa, 0xe7, 0x44, 0xaa, 0xcf, 0x89, 0x04, 0x51, 0x43, 0x36,
   348  	0x69, 0x7e, 0x3f, 0xac, 0x78, 0x3a, 0xfd, 0x60, 0xa3, 0xf8, 0xe8, 0xc0, 0xba, 0xc5, 0x89, 0x66,
   349  	0xe3, 0x26, 0xaf, 0x9d, 0xc2, 0x13, 0x5b, 0x5a, 0x3f, 0x3f, 0x46, 0x87, 0xab, 0xe9, 0xfe, 0xa5,
   350  	0xd8, 0x30, 0x8a, 0x03, 0xb8, 0xef, 0x31, 0xa8, 0xd1, 0x23, 0x1d, 0xe3, 0xb4, 0x22, 0x25, 0x9d,
   351  	0xd4, 0xc0, 0x14, 0x1e, 0xa1, 0xde, 0xaa, 0x0b, 0x68, 0x26, 0x5e, 0x1f, 0x3e, 0x6e, 0x6b, 0xe6,
   352  	0xf0, 0x27, 0x73, 0x13, 0xeb, 0xbe, 0x56, 0xf1, 0x7f, 0x5f, 0x23, 0x69, 0x7c, 0xdf, 0xa2, 0xbd,
   353  	0x49, 0x74, 0x3a, 0x1e, 0x5d, 0xf0, 0xf7, 0xc0, 0x38, 0xd5, 0x77, 0x0c, 0x22, 0x1d, 0x8f, 0x8c,
   354  	0xcd, 0x4e, 0x64, 0x81, 0x66, 0x33, 0x5d, 0x6e, 0x96, 0xc4, 0x82, 0x10, 0x6e, 0x16, 0x9e, 0x73,
   355  	0xbb, 0xf0, 0x9c, 0xdf, 0x0b, 0xcf, 0xf9, 0xbe, 0xf4, 0x3a, 0xb7, 0x4b, 0xaf, 0xf3, 0x63, 0xe9,
   356  	0x75, 0xbe, 0x7c, 0xcc, 0x4b, 0x55, 0xcc, 0x13, 0x3f, 0xe5, 0x34, 0x38, 0x6b, 0x97, 0xe1, 0x9c,
   357  	0x24, 0x32, 0x58, 0xad, 0xc6, 0xeb, 0x94, 0x0b, 0x58, 0x87, 0x05, 0x29, 0x59, 0x40, 0x79, 0x36,
   358  	0xaf, 0x40, 0x36, 0x0f, 0xc1, 0xbc, 0x82, 0xa4, 0x6b, 0x96, 0xfb, 0xcd, 0x9f, 0x00, 0x00, 0x00,
   359  	0xff, 0xff, 0xb5, 0x74, 0x5d, 0x7b, 0x28, 0x03, 0x00, 0x00,
   360  }
   361  
   362  func (m *BridgeValidator) Marshal() (dAtA []byte, err error) {
   363  	size := m.Size()
   364  	dAtA = make([]byte, size)
   365  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   366  	if err != nil {
   367  		return nil, err
   368  	}
   369  	return dAtA[:n], nil
   370  }
   371  
   372  func (m *BridgeValidator) MarshalTo(dAtA []byte) (int, error) {
   373  	size := m.Size()
   374  	return m.MarshalToSizedBuffer(dAtA[:size])
   375  }
   376  
   377  func (m *BridgeValidator) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   378  	i := len(dAtA)
   379  	_ = i
   380  	var l int
   381  	_ = l
   382  	if len(m.EthereumAddress) > 0 {
   383  		i -= len(m.EthereumAddress)
   384  		copy(dAtA[i:], m.EthereumAddress)
   385  		i = encodeVarintTypes(dAtA, i, uint64(len(m.EthereumAddress)))
   386  		i--
   387  		dAtA[i] = 0x12
   388  	}
   389  	if m.Power != 0 {
   390  		i = encodeVarintTypes(dAtA, i, uint64(m.Power))
   391  		i--
   392  		dAtA[i] = 0x8
   393  	}
   394  	return len(dAtA) - i, nil
   395  }
   396  
   397  func (m *Valset) Marshal() (dAtA []byte, err error) {
   398  	size := m.Size()
   399  	dAtA = make([]byte, size)
   400  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   401  	if err != nil {
   402  		return nil, err
   403  	}
   404  	return dAtA[:n], nil
   405  }
   406  
   407  func (m *Valset) MarshalTo(dAtA []byte) (int, error) {
   408  	size := m.Size()
   409  	return m.MarshalToSizedBuffer(dAtA[:size])
   410  }
   411  
   412  func (m *Valset) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   413  	i := len(dAtA)
   414  	_ = i
   415  	var l int
   416  	_ = l
   417  	if len(m.RewardToken) > 0 {
   418  		i -= len(m.RewardToken)
   419  		copy(dAtA[i:], m.RewardToken)
   420  		i = encodeVarintTypes(dAtA, i, uint64(len(m.RewardToken)))
   421  		i--
   422  		dAtA[i] = 0x2a
   423  	}
   424  	{
   425  		size := m.RewardAmount.Size()
   426  		i -= size
   427  		if _, err := m.RewardAmount.MarshalTo(dAtA[i:]); err != nil {
   428  			return 0, err
   429  		}
   430  		i = encodeVarintTypes(dAtA, i, uint64(size))
   431  	}
   432  	i--
   433  	dAtA[i] = 0x22
   434  	if m.Height != 0 {
   435  		i = encodeVarintTypes(dAtA, i, uint64(m.Height))
   436  		i--
   437  		dAtA[i] = 0x18
   438  	}
   439  	if len(m.Members) > 0 {
   440  		for iNdEx := len(m.Members) - 1; iNdEx >= 0; iNdEx-- {
   441  			{
   442  				size, err := m.Members[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   443  				if err != nil {
   444  					return 0, err
   445  				}
   446  				i -= size
   447  				i = encodeVarintTypes(dAtA, i, uint64(size))
   448  			}
   449  			i--
   450  			dAtA[i] = 0x12
   451  		}
   452  	}
   453  	if m.Nonce != 0 {
   454  		i = encodeVarintTypes(dAtA, i, uint64(m.Nonce))
   455  		i--
   456  		dAtA[i] = 0x8
   457  	}
   458  	return len(dAtA) - i, nil
   459  }
   460  
   461  func (m *LastObservedEthereumBlockHeight) Marshal() (dAtA []byte, err error) {
   462  	size := m.Size()
   463  	dAtA = make([]byte, size)
   464  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   465  	if err != nil {
   466  		return nil, err
   467  	}
   468  	return dAtA[:n], nil
   469  }
   470  
   471  func (m *LastObservedEthereumBlockHeight) MarshalTo(dAtA []byte) (int, error) {
   472  	size := m.Size()
   473  	return m.MarshalToSizedBuffer(dAtA[:size])
   474  }
   475  
   476  func (m *LastObservedEthereumBlockHeight) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   477  	i := len(dAtA)
   478  	_ = i
   479  	var l int
   480  	_ = l
   481  	if m.EthereumBlockHeight != 0 {
   482  		i = encodeVarintTypes(dAtA, i, uint64(m.EthereumBlockHeight))
   483  		i--
   484  		dAtA[i] = 0x10
   485  	}
   486  	if m.CosmosBlockHeight != 0 {
   487  		i = encodeVarintTypes(dAtA, i, uint64(m.CosmosBlockHeight))
   488  		i--
   489  		dAtA[i] = 0x8
   490  	}
   491  	return len(dAtA) - i, nil
   492  }
   493  
   494  func (m *LastClaimEvent) Marshal() (dAtA []byte, err error) {
   495  	size := m.Size()
   496  	dAtA = make([]byte, size)
   497  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   498  	if err != nil {
   499  		return nil, err
   500  	}
   501  	return dAtA[:n], nil
   502  }
   503  
   504  func (m *LastClaimEvent) MarshalTo(dAtA []byte) (int, error) {
   505  	size := m.Size()
   506  	return m.MarshalToSizedBuffer(dAtA[:size])
   507  }
   508  
   509  func (m *LastClaimEvent) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   510  	i := len(dAtA)
   511  	_ = i
   512  	var l int
   513  	_ = l
   514  	if m.EthereumEventHeight != 0 {
   515  		i = encodeVarintTypes(dAtA, i, uint64(m.EthereumEventHeight))
   516  		i--
   517  		dAtA[i] = 0x10
   518  	}
   519  	if m.EthereumEventNonce != 0 {
   520  		i = encodeVarintTypes(dAtA, i, uint64(m.EthereumEventNonce))
   521  		i--
   522  		dAtA[i] = 0x8
   523  	}
   524  	return len(dAtA) - i, nil
   525  }
   526  
   527  func (m *ERC20ToDenom) Marshal() (dAtA []byte, err error) {
   528  	size := m.Size()
   529  	dAtA = make([]byte, size)
   530  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   531  	if err != nil {
   532  		return nil, err
   533  	}
   534  	return dAtA[:n], nil
   535  }
   536  
   537  func (m *ERC20ToDenom) MarshalTo(dAtA []byte) (int, error) {
   538  	size := m.Size()
   539  	return m.MarshalToSizedBuffer(dAtA[:size])
   540  }
   541  
   542  func (m *ERC20ToDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   543  	i := len(dAtA)
   544  	_ = i
   545  	var l int
   546  	_ = l
   547  	if len(m.Denom) > 0 {
   548  		i -= len(m.Denom)
   549  		copy(dAtA[i:], m.Denom)
   550  		i = encodeVarintTypes(dAtA, i, uint64(len(m.Denom)))
   551  		i--
   552  		dAtA[i] = 0x12
   553  	}
   554  	if len(m.Erc20) > 0 {
   555  		i -= len(m.Erc20)
   556  		copy(dAtA[i:], m.Erc20)
   557  		i = encodeVarintTypes(dAtA, i, uint64(len(m.Erc20)))
   558  		i--
   559  		dAtA[i] = 0xa
   560  	}
   561  	return len(dAtA) - i, nil
   562  }
   563  
   564  func encodeVarintTypes(dAtA []byte, offset int, v uint64) int {
   565  	offset -= sovTypes(v)
   566  	base := offset
   567  	for v >= 1<<7 {
   568  		dAtA[offset] = uint8(v&0x7f | 0x80)
   569  		v >>= 7
   570  		offset++
   571  	}
   572  	dAtA[offset] = uint8(v)
   573  	return base
   574  }
   575  func (m *BridgeValidator) Size() (n int) {
   576  	if m == nil {
   577  		return 0
   578  	}
   579  	var l int
   580  	_ = l
   581  	if m.Power != 0 {
   582  		n += 1 + sovTypes(uint64(m.Power))
   583  	}
   584  	l = len(m.EthereumAddress)
   585  	if l > 0 {
   586  		n += 1 + l + sovTypes(uint64(l))
   587  	}
   588  	return n
   589  }
   590  
   591  func (m *Valset) Size() (n int) {
   592  	if m == nil {
   593  		return 0
   594  	}
   595  	var l int
   596  	_ = l
   597  	if m.Nonce != 0 {
   598  		n += 1 + sovTypes(uint64(m.Nonce))
   599  	}
   600  	if len(m.Members) > 0 {
   601  		for _, e := range m.Members {
   602  			l = e.Size()
   603  			n += 1 + l + sovTypes(uint64(l))
   604  		}
   605  	}
   606  	if m.Height != 0 {
   607  		n += 1 + sovTypes(uint64(m.Height))
   608  	}
   609  	l = m.RewardAmount.Size()
   610  	n += 1 + l + sovTypes(uint64(l))
   611  	l = len(m.RewardToken)
   612  	if l > 0 {
   613  		n += 1 + l + sovTypes(uint64(l))
   614  	}
   615  	return n
   616  }
   617  
   618  func (m *LastObservedEthereumBlockHeight) Size() (n int) {
   619  	if m == nil {
   620  		return 0
   621  	}
   622  	var l int
   623  	_ = l
   624  	if m.CosmosBlockHeight != 0 {
   625  		n += 1 + sovTypes(uint64(m.CosmosBlockHeight))
   626  	}
   627  	if m.EthereumBlockHeight != 0 {
   628  		n += 1 + sovTypes(uint64(m.EthereumBlockHeight))
   629  	}
   630  	return n
   631  }
   632  
   633  func (m *LastClaimEvent) Size() (n int) {
   634  	if m == nil {
   635  		return 0
   636  	}
   637  	var l int
   638  	_ = l
   639  	if m.EthereumEventNonce != 0 {
   640  		n += 1 + sovTypes(uint64(m.EthereumEventNonce))
   641  	}
   642  	if m.EthereumEventHeight != 0 {
   643  		n += 1 + sovTypes(uint64(m.EthereumEventHeight))
   644  	}
   645  	return n
   646  }
   647  
   648  func (m *ERC20ToDenom) Size() (n int) {
   649  	if m == nil {
   650  		return 0
   651  	}
   652  	var l int
   653  	_ = l
   654  	l = len(m.Erc20)
   655  	if l > 0 {
   656  		n += 1 + l + sovTypes(uint64(l))
   657  	}
   658  	l = len(m.Denom)
   659  	if l > 0 {
   660  		n += 1 + l + sovTypes(uint64(l))
   661  	}
   662  	return n
   663  }
   664  
   665  func sovTypes(x uint64) (n int) {
   666  	return (math_bits.Len64(x|1) + 6) / 7
   667  }
   668  func sozTypes(x uint64) (n int) {
   669  	return sovTypes(uint64((x << 1) ^ uint64((int64(x) >> 63))))
   670  }
   671  func (m *BridgeValidator) Unmarshal(dAtA []byte) error {
   672  	l := len(dAtA)
   673  	iNdEx := 0
   674  	for iNdEx < l {
   675  		preIndex := iNdEx
   676  		var wire uint64
   677  		for shift := uint(0); ; shift += 7 {
   678  			if shift >= 64 {
   679  				return ErrIntOverflowTypes
   680  			}
   681  			if iNdEx >= l {
   682  				return io.ErrUnexpectedEOF
   683  			}
   684  			b := dAtA[iNdEx]
   685  			iNdEx++
   686  			wire |= uint64(b&0x7F) << shift
   687  			if b < 0x80 {
   688  				break
   689  			}
   690  		}
   691  		fieldNum := int32(wire >> 3)
   692  		wireType := int(wire & 0x7)
   693  		if wireType == 4 {
   694  			return fmt.Errorf("proto: BridgeValidator: wiretype end group for non-group")
   695  		}
   696  		if fieldNum <= 0 {
   697  			return fmt.Errorf("proto: BridgeValidator: illegal tag %d (wire type %d)", fieldNum, wire)
   698  		}
   699  		switch fieldNum {
   700  		case 1:
   701  			if wireType != 0 {
   702  				return fmt.Errorf("proto: wrong wireType = %d for field Power", wireType)
   703  			}
   704  			m.Power = 0
   705  			for shift := uint(0); ; shift += 7 {
   706  				if shift >= 64 {
   707  					return ErrIntOverflowTypes
   708  				}
   709  				if iNdEx >= l {
   710  					return io.ErrUnexpectedEOF
   711  				}
   712  				b := dAtA[iNdEx]
   713  				iNdEx++
   714  				m.Power |= uint64(b&0x7F) << shift
   715  				if b < 0x80 {
   716  					break
   717  				}
   718  			}
   719  		case 2:
   720  			if wireType != 2 {
   721  				return fmt.Errorf("proto: wrong wireType = %d for field EthereumAddress", wireType)
   722  			}
   723  			var stringLen uint64
   724  			for shift := uint(0); ; shift += 7 {
   725  				if shift >= 64 {
   726  					return ErrIntOverflowTypes
   727  				}
   728  				if iNdEx >= l {
   729  					return io.ErrUnexpectedEOF
   730  				}
   731  				b := dAtA[iNdEx]
   732  				iNdEx++
   733  				stringLen |= uint64(b&0x7F) << shift
   734  				if b < 0x80 {
   735  					break
   736  				}
   737  			}
   738  			intStringLen := int(stringLen)
   739  			if intStringLen < 0 {
   740  				return ErrInvalidLengthTypes
   741  			}
   742  			postIndex := iNdEx + intStringLen
   743  			if postIndex < 0 {
   744  				return ErrInvalidLengthTypes
   745  			}
   746  			if postIndex > l {
   747  				return io.ErrUnexpectedEOF
   748  			}
   749  			m.EthereumAddress = string(dAtA[iNdEx:postIndex])
   750  			iNdEx = postIndex
   751  		default:
   752  			iNdEx = preIndex
   753  			skippy, err := skipTypes(dAtA[iNdEx:])
   754  			if err != nil {
   755  				return err
   756  			}
   757  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   758  				return ErrInvalidLengthTypes
   759  			}
   760  			if (iNdEx + skippy) > l {
   761  				return io.ErrUnexpectedEOF
   762  			}
   763  			iNdEx += skippy
   764  		}
   765  	}
   766  
   767  	if iNdEx > l {
   768  		return io.ErrUnexpectedEOF
   769  	}
   770  	return nil
   771  }
   772  func (m *Valset) Unmarshal(dAtA []byte) error {
   773  	l := len(dAtA)
   774  	iNdEx := 0
   775  	for iNdEx < l {
   776  		preIndex := iNdEx
   777  		var wire uint64
   778  		for shift := uint(0); ; shift += 7 {
   779  			if shift >= 64 {
   780  				return ErrIntOverflowTypes
   781  			}
   782  			if iNdEx >= l {
   783  				return io.ErrUnexpectedEOF
   784  			}
   785  			b := dAtA[iNdEx]
   786  			iNdEx++
   787  			wire |= uint64(b&0x7F) << shift
   788  			if b < 0x80 {
   789  				break
   790  			}
   791  		}
   792  		fieldNum := int32(wire >> 3)
   793  		wireType := int(wire & 0x7)
   794  		if wireType == 4 {
   795  			return fmt.Errorf("proto: Valset: wiretype end group for non-group")
   796  		}
   797  		if fieldNum <= 0 {
   798  			return fmt.Errorf("proto: Valset: illegal tag %d (wire type %d)", fieldNum, wire)
   799  		}
   800  		switch fieldNum {
   801  		case 1:
   802  			if wireType != 0 {
   803  				return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType)
   804  			}
   805  			m.Nonce = 0
   806  			for shift := uint(0); ; shift += 7 {
   807  				if shift >= 64 {
   808  					return ErrIntOverflowTypes
   809  				}
   810  				if iNdEx >= l {
   811  					return io.ErrUnexpectedEOF
   812  				}
   813  				b := dAtA[iNdEx]
   814  				iNdEx++
   815  				m.Nonce |= uint64(b&0x7F) << shift
   816  				if b < 0x80 {
   817  					break
   818  				}
   819  			}
   820  		case 2:
   821  			if wireType != 2 {
   822  				return fmt.Errorf("proto: wrong wireType = %d for field Members", wireType)
   823  			}
   824  			var msglen int
   825  			for shift := uint(0); ; shift += 7 {
   826  				if shift >= 64 {
   827  					return ErrIntOverflowTypes
   828  				}
   829  				if iNdEx >= l {
   830  					return io.ErrUnexpectedEOF
   831  				}
   832  				b := dAtA[iNdEx]
   833  				iNdEx++
   834  				msglen |= int(b&0x7F) << shift
   835  				if b < 0x80 {
   836  					break
   837  				}
   838  			}
   839  			if msglen < 0 {
   840  				return ErrInvalidLengthTypes
   841  			}
   842  			postIndex := iNdEx + msglen
   843  			if postIndex < 0 {
   844  				return ErrInvalidLengthTypes
   845  			}
   846  			if postIndex > l {
   847  				return io.ErrUnexpectedEOF
   848  			}
   849  			m.Members = append(m.Members, &BridgeValidator{})
   850  			if err := m.Members[len(m.Members)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   851  				return err
   852  			}
   853  			iNdEx = postIndex
   854  		case 3:
   855  			if wireType != 0 {
   856  				return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
   857  			}
   858  			m.Height = 0
   859  			for shift := uint(0); ; shift += 7 {
   860  				if shift >= 64 {
   861  					return ErrIntOverflowTypes
   862  				}
   863  				if iNdEx >= l {
   864  					return io.ErrUnexpectedEOF
   865  				}
   866  				b := dAtA[iNdEx]
   867  				iNdEx++
   868  				m.Height |= uint64(b&0x7F) << shift
   869  				if b < 0x80 {
   870  					break
   871  				}
   872  			}
   873  		case 4:
   874  			if wireType != 2 {
   875  				return fmt.Errorf("proto: wrong wireType = %d for field RewardAmount", wireType)
   876  			}
   877  			var stringLen uint64
   878  			for shift := uint(0); ; shift += 7 {
   879  				if shift >= 64 {
   880  					return ErrIntOverflowTypes
   881  				}
   882  				if iNdEx >= l {
   883  					return io.ErrUnexpectedEOF
   884  				}
   885  				b := dAtA[iNdEx]
   886  				iNdEx++
   887  				stringLen |= uint64(b&0x7F) << shift
   888  				if b < 0x80 {
   889  					break
   890  				}
   891  			}
   892  			intStringLen := int(stringLen)
   893  			if intStringLen < 0 {
   894  				return ErrInvalidLengthTypes
   895  			}
   896  			postIndex := iNdEx + intStringLen
   897  			if postIndex < 0 {
   898  				return ErrInvalidLengthTypes
   899  			}
   900  			if postIndex > l {
   901  				return io.ErrUnexpectedEOF
   902  			}
   903  			if err := m.RewardAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   904  				return err
   905  			}
   906  			iNdEx = postIndex
   907  		case 5:
   908  			if wireType != 2 {
   909  				return fmt.Errorf("proto: wrong wireType = %d for field RewardToken", wireType)
   910  			}
   911  			var stringLen uint64
   912  			for shift := uint(0); ; shift += 7 {
   913  				if shift >= 64 {
   914  					return ErrIntOverflowTypes
   915  				}
   916  				if iNdEx >= l {
   917  					return io.ErrUnexpectedEOF
   918  				}
   919  				b := dAtA[iNdEx]
   920  				iNdEx++
   921  				stringLen |= uint64(b&0x7F) << shift
   922  				if b < 0x80 {
   923  					break
   924  				}
   925  			}
   926  			intStringLen := int(stringLen)
   927  			if intStringLen < 0 {
   928  				return ErrInvalidLengthTypes
   929  			}
   930  			postIndex := iNdEx + intStringLen
   931  			if postIndex < 0 {
   932  				return ErrInvalidLengthTypes
   933  			}
   934  			if postIndex > l {
   935  				return io.ErrUnexpectedEOF
   936  			}
   937  			m.RewardToken = string(dAtA[iNdEx:postIndex])
   938  			iNdEx = postIndex
   939  		default:
   940  			iNdEx = preIndex
   941  			skippy, err := skipTypes(dAtA[iNdEx:])
   942  			if err != nil {
   943  				return err
   944  			}
   945  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   946  				return ErrInvalidLengthTypes
   947  			}
   948  			if (iNdEx + skippy) > l {
   949  				return io.ErrUnexpectedEOF
   950  			}
   951  			iNdEx += skippy
   952  		}
   953  	}
   954  
   955  	if iNdEx > l {
   956  		return io.ErrUnexpectedEOF
   957  	}
   958  	return nil
   959  }
   960  func (m *LastObservedEthereumBlockHeight) Unmarshal(dAtA []byte) error {
   961  	l := len(dAtA)
   962  	iNdEx := 0
   963  	for iNdEx < l {
   964  		preIndex := iNdEx
   965  		var wire uint64
   966  		for shift := uint(0); ; shift += 7 {
   967  			if shift >= 64 {
   968  				return ErrIntOverflowTypes
   969  			}
   970  			if iNdEx >= l {
   971  				return io.ErrUnexpectedEOF
   972  			}
   973  			b := dAtA[iNdEx]
   974  			iNdEx++
   975  			wire |= uint64(b&0x7F) << shift
   976  			if b < 0x80 {
   977  				break
   978  			}
   979  		}
   980  		fieldNum := int32(wire >> 3)
   981  		wireType := int(wire & 0x7)
   982  		if wireType == 4 {
   983  			return fmt.Errorf("proto: LastObservedEthereumBlockHeight: wiretype end group for non-group")
   984  		}
   985  		if fieldNum <= 0 {
   986  			return fmt.Errorf("proto: LastObservedEthereumBlockHeight: illegal tag %d (wire type %d)", fieldNum, wire)
   987  		}
   988  		switch fieldNum {
   989  		case 1:
   990  			if wireType != 0 {
   991  				return fmt.Errorf("proto: wrong wireType = %d for field CosmosBlockHeight", wireType)
   992  			}
   993  			m.CosmosBlockHeight = 0
   994  			for shift := uint(0); ; shift += 7 {
   995  				if shift >= 64 {
   996  					return ErrIntOverflowTypes
   997  				}
   998  				if iNdEx >= l {
   999  					return io.ErrUnexpectedEOF
  1000  				}
  1001  				b := dAtA[iNdEx]
  1002  				iNdEx++
  1003  				m.CosmosBlockHeight |= uint64(b&0x7F) << shift
  1004  				if b < 0x80 {
  1005  					break
  1006  				}
  1007  			}
  1008  		case 2:
  1009  			if wireType != 0 {
  1010  				return fmt.Errorf("proto: wrong wireType = %d for field EthereumBlockHeight", wireType)
  1011  			}
  1012  			m.EthereumBlockHeight = 0
  1013  			for shift := uint(0); ; shift += 7 {
  1014  				if shift >= 64 {
  1015  					return ErrIntOverflowTypes
  1016  				}
  1017  				if iNdEx >= l {
  1018  					return io.ErrUnexpectedEOF
  1019  				}
  1020  				b := dAtA[iNdEx]
  1021  				iNdEx++
  1022  				m.EthereumBlockHeight |= uint64(b&0x7F) << shift
  1023  				if b < 0x80 {
  1024  					break
  1025  				}
  1026  			}
  1027  		default:
  1028  			iNdEx = preIndex
  1029  			skippy, err := skipTypes(dAtA[iNdEx:])
  1030  			if err != nil {
  1031  				return err
  1032  			}
  1033  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1034  				return ErrInvalidLengthTypes
  1035  			}
  1036  			if (iNdEx + skippy) > l {
  1037  				return io.ErrUnexpectedEOF
  1038  			}
  1039  			iNdEx += skippy
  1040  		}
  1041  	}
  1042  
  1043  	if iNdEx > l {
  1044  		return io.ErrUnexpectedEOF
  1045  	}
  1046  	return nil
  1047  }
  1048  func (m *LastClaimEvent) Unmarshal(dAtA []byte) error {
  1049  	l := len(dAtA)
  1050  	iNdEx := 0
  1051  	for iNdEx < l {
  1052  		preIndex := iNdEx
  1053  		var wire uint64
  1054  		for shift := uint(0); ; shift += 7 {
  1055  			if shift >= 64 {
  1056  				return ErrIntOverflowTypes
  1057  			}
  1058  			if iNdEx >= l {
  1059  				return io.ErrUnexpectedEOF
  1060  			}
  1061  			b := dAtA[iNdEx]
  1062  			iNdEx++
  1063  			wire |= uint64(b&0x7F) << shift
  1064  			if b < 0x80 {
  1065  				break
  1066  			}
  1067  		}
  1068  		fieldNum := int32(wire >> 3)
  1069  		wireType := int(wire & 0x7)
  1070  		if wireType == 4 {
  1071  			return fmt.Errorf("proto: LastClaimEvent: wiretype end group for non-group")
  1072  		}
  1073  		if fieldNum <= 0 {
  1074  			return fmt.Errorf("proto: LastClaimEvent: illegal tag %d (wire type %d)", fieldNum, wire)
  1075  		}
  1076  		switch fieldNum {
  1077  		case 1:
  1078  			if wireType != 0 {
  1079  				return fmt.Errorf("proto: wrong wireType = %d for field EthereumEventNonce", wireType)
  1080  			}
  1081  			m.EthereumEventNonce = 0
  1082  			for shift := uint(0); ; shift += 7 {
  1083  				if shift >= 64 {
  1084  					return ErrIntOverflowTypes
  1085  				}
  1086  				if iNdEx >= l {
  1087  					return io.ErrUnexpectedEOF
  1088  				}
  1089  				b := dAtA[iNdEx]
  1090  				iNdEx++
  1091  				m.EthereumEventNonce |= uint64(b&0x7F) << shift
  1092  				if b < 0x80 {
  1093  					break
  1094  				}
  1095  			}
  1096  		case 2:
  1097  			if wireType != 0 {
  1098  				return fmt.Errorf("proto: wrong wireType = %d for field EthereumEventHeight", wireType)
  1099  			}
  1100  			m.EthereumEventHeight = 0
  1101  			for shift := uint(0); ; shift += 7 {
  1102  				if shift >= 64 {
  1103  					return ErrIntOverflowTypes
  1104  				}
  1105  				if iNdEx >= l {
  1106  					return io.ErrUnexpectedEOF
  1107  				}
  1108  				b := dAtA[iNdEx]
  1109  				iNdEx++
  1110  				m.EthereumEventHeight |= uint64(b&0x7F) << shift
  1111  				if b < 0x80 {
  1112  					break
  1113  				}
  1114  			}
  1115  		default:
  1116  			iNdEx = preIndex
  1117  			skippy, err := skipTypes(dAtA[iNdEx:])
  1118  			if err != nil {
  1119  				return err
  1120  			}
  1121  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1122  				return ErrInvalidLengthTypes
  1123  			}
  1124  			if (iNdEx + skippy) > l {
  1125  				return io.ErrUnexpectedEOF
  1126  			}
  1127  			iNdEx += skippy
  1128  		}
  1129  	}
  1130  
  1131  	if iNdEx > l {
  1132  		return io.ErrUnexpectedEOF
  1133  	}
  1134  	return nil
  1135  }
  1136  func (m *ERC20ToDenom) Unmarshal(dAtA []byte) error {
  1137  	l := len(dAtA)
  1138  	iNdEx := 0
  1139  	for iNdEx < l {
  1140  		preIndex := iNdEx
  1141  		var wire uint64
  1142  		for shift := uint(0); ; shift += 7 {
  1143  			if shift >= 64 {
  1144  				return ErrIntOverflowTypes
  1145  			}
  1146  			if iNdEx >= l {
  1147  				return io.ErrUnexpectedEOF
  1148  			}
  1149  			b := dAtA[iNdEx]
  1150  			iNdEx++
  1151  			wire |= uint64(b&0x7F) << shift
  1152  			if b < 0x80 {
  1153  				break
  1154  			}
  1155  		}
  1156  		fieldNum := int32(wire >> 3)
  1157  		wireType := int(wire & 0x7)
  1158  		if wireType == 4 {
  1159  			return fmt.Errorf("proto: ERC20ToDenom: wiretype end group for non-group")
  1160  		}
  1161  		if fieldNum <= 0 {
  1162  			return fmt.Errorf("proto: ERC20ToDenom: illegal tag %d (wire type %d)", fieldNum, wire)
  1163  		}
  1164  		switch fieldNum {
  1165  		case 1:
  1166  			if wireType != 2 {
  1167  				return fmt.Errorf("proto: wrong wireType = %d for field Erc20", wireType)
  1168  			}
  1169  			var stringLen uint64
  1170  			for shift := uint(0); ; shift += 7 {
  1171  				if shift >= 64 {
  1172  					return ErrIntOverflowTypes
  1173  				}
  1174  				if iNdEx >= l {
  1175  					return io.ErrUnexpectedEOF
  1176  				}
  1177  				b := dAtA[iNdEx]
  1178  				iNdEx++
  1179  				stringLen |= uint64(b&0x7F) << shift
  1180  				if b < 0x80 {
  1181  					break
  1182  				}
  1183  			}
  1184  			intStringLen := int(stringLen)
  1185  			if intStringLen < 0 {
  1186  				return ErrInvalidLengthTypes
  1187  			}
  1188  			postIndex := iNdEx + intStringLen
  1189  			if postIndex < 0 {
  1190  				return ErrInvalidLengthTypes
  1191  			}
  1192  			if postIndex > l {
  1193  				return io.ErrUnexpectedEOF
  1194  			}
  1195  			m.Erc20 = string(dAtA[iNdEx:postIndex])
  1196  			iNdEx = postIndex
  1197  		case 2:
  1198  			if wireType != 2 {
  1199  				return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType)
  1200  			}
  1201  			var stringLen uint64
  1202  			for shift := uint(0); ; shift += 7 {
  1203  				if shift >= 64 {
  1204  					return ErrIntOverflowTypes
  1205  				}
  1206  				if iNdEx >= l {
  1207  					return io.ErrUnexpectedEOF
  1208  				}
  1209  				b := dAtA[iNdEx]
  1210  				iNdEx++
  1211  				stringLen |= uint64(b&0x7F) << shift
  1212  				if b < 0x80 {
  1213  					break
  1214  				}
  1215  			}
  1216  			intStringLen := int(stringLen)
  1217  			if intStringLen < 0 {
  1218  				return ErrInvalidLengthTypes
  1219  			}
  1220  			postIndex := iNdEx + intStringLen
  1221  			if postIndex < 0 {
  1222  				return ErrInvalidLengthTypes
  1223  			}
  1224  			if postIndex > l {
  1225  				return io.ErrUnexpectedEOF
  1226  			}
  1227  			m.Denom = string(dAtA[iNdEx:postIndex])
  1228  			iNdEx = postIndex
  1229  		default:
  1230  			iNdEx = preIndex
  1231  			skippy, err := skipTypes(dAtA[iNdEx:])
  1232  			if err != nil {
  1233  				return err
  1234  			}
  1235  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1236  				return ErrInvalidLengthTypes
  1237  			}
  1238  			if (iNdEx + skippy) > l {
  1239  				return io.ErrUnexpectedEOF
  1240  			}
  1241  			iNdEx += skippy
  1242  		}
  1243  	}
  1244  
  1245  	if iNdEx > l {
  1246  		return io.ErrUnexpectedEOF
  1247  	}
  1248  	return nil
  1249  }
  1250  func skipTypes(dAtA []byte) (n int, err error) {
  1251  	l := len(dAtA)
  1252  	iNdEx := 0
  1253  	depth := 0
  1254  	for iNdEx < l {
  1255  		var wire uint64
  1256  		for shift := uint(0); ; shift += 7 {
  1257  			if shift >= 64 {
  1258  				return 0, ErrIntOverflowTypes
  1259  			}
  1260  			if iNdEx >= l {
  1261  				return 0, io.ErrUnexpectedEOF
  1262  			}
  1263  			b := dAtA[iNdEx]
  1264  			iNdEx++
  1265  			wire |= (uint64(b) & 0x7F) << shift
  1266  			if b < 0x80 {
  1267  				break
  1268  			}
  1269  		}
  1270  		wireType := int(wire & 0x7)
  1271  		switch wireType {
  1272  		case 0:
  1273  			for shift := uint(0); ; shift += 7 {
  1274  				if shift >= 64 {
  1275  					return 0, ErrIntOverflowTypes
  1276  				}
  1277  				if iNdEx >= l {
  1278  					return 0, io.ErrUnexpectedEOF
  1279  				}
  1280  				iNdEx++
  1281  				if dAtA[iNdEx-1] < 0x80 {
  1282  					break
  1283  				}
  1284  			}
  1285  		case 1:
  1286  			iNdEx += 8
  1287  		case 2:
  1288  			var length int
  1289  			for shift := uint(0); ; shift += 7 {
  1290  				if shift >= 64 {
  1291  					return 0, ErrIntOverflowTypes
  1292  				}
  1293  				if iNdEx >= l {
  1294  					return 0, io.ErrUnexpectedEOF
  1295  				}
  1296  				b := dAtA[iNdEx]
  1297  				iNdEx++
  1298  				length |= (int(b) & 0x7F) << shift
  1299  				if b < 0x80 {
  1300  					break
  1301  				}
  1302  			}
  1303  			if length < 0 {
  1304  				return 0, ErrInvalidLengthTypes
  1305  			}
  1306  			iNdEx += length
  1307  		case 3:
  1308  			depth++
  1309  		case 4:
  1310  			if depth == 0 {
  1311  				return 0, ErrUnexpectedEndOfGroupTypes
  1312  			}
  1313  			depth--
  1314  		case 5:
  1315  			iNdEx += 4
  1316  		default:
  1317  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  1318  		}
  1319  		if iNdEx < 0 {
  1320  			return 0, ErrInvalidLengthTypes
  1321  		}
  1322  		if depth == 0 {
  1323  			return iNdEx, nil
  1324  		}
  1325  	}
  1326  	return 0, io.ErrUnexpectedEOF
  1327  }
  1328  
  1329  var (
  1330  	ErrInvalidLengthTypes        = fmt.Errorf("proto: negative length found during unmarshaling")
  1331  	ErrIntOverflowTypes          = fmt.Errorf("proto: integer overflow")
  1332  	ErrUnexpectedEndOfGroupTypes = fmt.Errorf("proto: unexpected end of group")
  1333  )