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

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: injective/exchange/v1beta1/genesis.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  // GenesisState defines the exchange module's genesis state.
    28  type GenesisState struct {
    29  	// params defines all the parameters of related to exchange.
    30  	Params Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params"`
    31  	// spot_markets is an array containing the genesis trade pairs
    32  	SpotMarkets []*SpotMarket `protobuf:"bytes,2,rep,name=spot_markets,json=spotMarkets,proto3" json:"spot_markets,omitempty"`
    33  	// derivative_markets is an array containing the genesis derivative markets
    34  	DerivativeMarkets []*DerivativeMarket `protobuf:"bytes,3,rep,name=derivative_markets,json=derivativeMarkets,proto3" json:"derivative_markets,omitempty"`
    35  	// spot_orderbook defines the spot exchange limit orderbook active at genesis.
    36  	SpotOrderbook []SpotOrderBook `protobuf:"bytes,4,rep,name=spot_orderbook,json=spotOrderbook,proto3" json:"spot_orderbook"`
    37  	// derivative_orderbook defines the derivative exchange limit orderbook active
    38  	// at genesis.
    39  	DerivativeOrderbook []DerivativeOrderBook `protobuf:"bytes,5,rep,name=derivative_orderbook,json=derivativeOrderbook,proto3" json:"derivative_orderbook"`
    40  	// balances defines the exchange users balances active at genesis.
    41  	Balances []Balance `protobuf:"bytes,6,rep,name=balances,proto3" json:"balances"`
    42  	// positions defines the exchange derivative positions at genesis
    43  	Positions []DerivativePosition `protobuf:"bytes,7,rep,name=positions,proto3" json:"positions"`
    44  	// subaccount_trade_nonces defines the subaccount trade nonces for the
    45  	// subaccounts at genesis
    46  	SubaccountTradeNonces []SubaccountNonce `protobuf:"bytes,8,rep,name=subaccount_trade_nonces,json=subaccountTradeNonces,proto3" json:"subaccount_trade_nonces"`
    47  	// expiry_futures_market_info defines the market info for the expiry futures
    48  	// markets at genesis
    49  	ExpiryFuturesMarketInfoState []ExpiryFuturesMarketInfoState `protobuf:"bytes,9,rep,name=expiry_futures_market_info_state,json=expiryFuturesMarketInfoState,proto3" json:"expiry_futures_market_info_state"`
    50  	// perpetual_market_info defines the market info for the perpetual derivative
    51  	// markets at genesis
    52  	PerpetualMarketInfo []PerpetualMarketInfo `protobuf:"bytes,10,rep,name=perpetual_market_info,json=perpetualMarketInfo,proto3" json:"perpetual_market_info"`
    53  	// perpetual_market_funding_state defines the funding state for the perpetual
    54  	// derivative markets at genesis
    55  	PerpetualMarketFundingState []PerpetualMarketFundingState `protobuf:"bytes,11,rep,name=perpetual_market_funding_state,json=perpetualMarketFundingState,proto3" json:"perpetual_market_funding_state"`
    56  	// derivative_market_settlement_scheduled defines the scheduled markets for
    57  	// settlement at genesis
    58  	DerivativeMarketSettlementScheduled []DerivativeMarketSettlementInfo `protobuf:"bytes,12,rep,name=derivative_market_settlement_scheduled,json=derivativeMarketSettlementScheduled,proto3" json:"derivative_market_settlement_scheduled"`
    59  	// sets spot markets as enabled
    60  	IsSpotExchangeEnabled bool `protobuf:"varint,13,opt,name=is_spot_exchange_enabled,json=isSpotExchangeEnabled,proto3" json:"is_spot_exchange_enabled,omitempty"`
    61  	// sets derivative markets as enabled
    62  	IsDerivativesExchangeEnabled bool `protobuf:"varint,14,opt,name=is_derivatives_exchange_enabled,json=isDerivativesExchangeEnabled,proto3" json:"is_derivatives_exchange_enabled,omitempty"`
    63  	// the current trading reward campaign info
    64  	TradingRewardCampaignInfo *TradingRewardCampaignInfo `protobuf:"bytes,15,opt,name=trading_reward_campaign_info,json=tradingRewardCampaignInfo,proto3" json:"trading_reward_campaign_info,omitempty"`
    65  	// the current and upcoming trading reward campaign pools
    66  	TradingRewardPoolCampaignSchedule []*CampaignRewardPool `protobuf:"bytes,16,rep,name=trading_reward_pool_campaign_schedule,json=tradingRewardPoolCampaignSchedule,proto3" json:"trading_reward_pool_campaign_schedule,omitempty"`
    67  	// the current trading reward account points
    68  	TradingRewardCampaignAccountPoints []*TradingRewardCampaignAccountPoints `protobuf:"bytes,17,rep,name=trading_reward_campaign_account_points,json=tradingRewardCampaignAccountPoints,proto3" json:"trading_reward_campaign_account_points,omitempty"`
    69  	// the fee discount schedule
    70  	FeeDiscountSchedule *FeeDiscountSchedule `protobuf:"bytes,18,opt,name=fee_discount_schedule,json=feeDiscountSchedule,proto3" json:"fee_discount_schedule,omitempty"`
    71  	// the cached fee discount account tiers with TTL
    72  	FeeDiscountAccountTierTtl []*FeeDiscountAccountTierTTL `protobuf:"bytes,19,rep,name=fee_discount_account_tier_ttl,json=feeDiscountAccountTierTtl,proto3" json:"fee_discount_account_tier_ttl,omitempty"`
    73  	// the fee discount paid by accounts in all buckets
    74  	FeeDiscountBucketVolumeAccounts []*FeeDiscountBucketVolumeAccounts `protobuf:"bytes,20,rep,name=fee_discount_bucket_volume_accounts,json=feeDiscountBucketVolumeAccounts,proto3" json:"fee_discount_bucket_volume_accounts,omitempty"`
    75  	// sets the first fee cycle as finished
    76  	IsFirstFeeCycleFinished bool `protobuf:"varint,21,opt,name=is_first_fee_cycle_finished,json=isFirstFeeCycleFinished,proto3" json:"is_first_fee_cycle_finished,omitempty"`
    77  	// the current and upcoming trading reward campaign pending pools
    78  	PendingTradingRewardPoolCampaignSchedule []*CampaignRewardPool `protobuf:"bytes,22,rep,name=pending_trading_reward_pool_campaign_schedule,json=pendingTradingRewardPoolCampaignSchedule,proto3" json:"pending_trading_reward_pool_campaign_schedule,omitempty"`
    79  	// the pending trading reward account points
    80  	PendingTradingRewardCampaignAccountPoints []*TradingRewardCampaignAccountPendingPoints `protobuf:"bytes,23,rep,name=pending_trading_reward_campaign_account_points,json=pendingTradingRewardCampaignAccountPoints,proto3" json:"pending_trading_reward_campaign_account_points,omitempty"`
    81  	// the addresses opting out of trading rewards
    82  	RewardsOptOutAddresses []string        `protobuf:"bytes,24,rep,name=rewards_opt_out_addresses,json=rewardsOptOutAddresses,proto3" json:"rewards_opt_out_addresses,omitempty"`
    83  	HistoricalTradeRecords []*TradeRecords `protobuf:"bytes,25,rep,name=historical_trade_records,json=historicalTradeRecords,proto3" json:"historical_trade_records,omitempty"`
    84  	// binary_options_markets is an array containing the genesis binary options
    85  	// markets
    86  	BinaryOptionsMarkets []*BinaryOptionsMarket `protobuf:"bytes,26,rep,name=binary_options_markets,json=binaryOptionsMarkets,proto3" json:"binary_options_markets,omitempty"`
    87  	// binary_options_markets_scheduled_for_settlement contains the marketIDs of
    88  	// binary options markets scheduled for next-block settlement
    89  	BinaryOptionsMarketIdsScheduledForSettlement []string `protobuf:"bytes,27,rep,name=binary_options_market_ids_scheduled_for_settlement,json=binaryOptionsMarketIdsScheduledForSettlement,proto3" json:"binary_options_market_ids_scheduled_for_settlement,omitempty"`
    90  	// spot_market_ids_scheduled_to_force_close defines the scheduled markets for
    91  	// forced closings at genesis
    92  	SpotMarketIdsScheduledToForceClose []string `protobuf:"bytes,28,rep,name=spot_market_ids_scheduled_to_force_close,json=spotMarketIdsScheduledToForceClose,proto3" json:"spot_market_ids_scheduled_to_force_close,omitempty"`
    93  	// denom_decimals defines the denom decimals for the exchange.
    94  	DenomDecimals []DenomDecimals `protobuf:"bytes,29,rep,name=denom_decimals,json=denomDecimals,proto3" json:"denom_decimals"`
    95  	// conditional_derivative_orderbook contains conditional orderbooks for all
    96  	// markets (both lmit and market conditional orders)
    97  	ConditionalDerivativeOrderbooks []*ConditionalDerivativeOrderBook `protobuf:"bytes,30,rep,name=conditional_derivative_orderbooks,json=conditionalDerivativeOrderbooks,proto3" json:"conditional_derivative_orderbooks,omitempty"`
    98  	// market_fee_multipliers contains any non-default atomic order fee
    99  	// multipliers
   100  	MarketFeeMultipliers []*MarketFeeMultiplier             `protobuf:"bytes,31,rep,name=market_fee_multipliers,json=marketFeeMultipliers,proto3" json:"market_fee_multipliers,omitempty"`
   101  	OrderbookSequences   []*OrderbookSequence               `protobuf:"bytes,32,rep,name=orderbook_sequences,json=orderbookSequences,proto3" json:"orderbook_sequences,omitempty"`
   102  	SubaccountVolumes    []*AggregateSubaccountVolumeRecord `protobuf:"bytes,33,rep,name=subaccount_volumes,json=subaccountVolumes,proto3" json:"subaccount_volumes,omitempty"`
   103  	MarketVolumes        []*MarketVolume                    `protobuf:"bytes,34,rep,name=market_volumes,json=marketVolumes,proto3" json:"market_volumes,omitempty"`
   104  	GrantAuthorizations  []*FullGrantAuthorizations         `protobuf:"bytes,35,rep,name=grant_authorizations,json=grantAuthorizations,proto3" json:"grant_authorizations,omitempty"`
   105  	ActiveGrants         []*FullActiveGrant                 `protobuf:"bytes,36,rep,name=active_grants,json=activeGrants,proto3" json:"active_grants,omitempty"`
   106  }
   107  
   108  func (m *GenesisState) Reset()         { *m = GenesisState{} }
   109  func (m *GenesisState) String() string { return proto.CompactTextString(m) }
   110  func (*GenesisState) ProtoMessage()    {}
   111  func (*GenesisState) Descriptor() ([]byte, []int) {
   112  	return fileDescriptor_c47ec6b98758ed05, []int{0}
   113  }
   114  func (m *GenesisState) XXX_Unmarshal(b []byte) error {
   115  	return m.Unmarshal(b)
   116  }
   117  func (m *GenesisState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   118  	if deterministic {
   119  		return xxx_messageInfo_GenesisState.Marshal(b, m, deterministic)
   120  	} else {
   121  		b = b[:cap(b)]
   122  		n, err := m.MarshalToSizedBuffer(b)
   123  		if err != nil {
   124  			return nil, err
   125  		}
   126  		return b[:n], nil
   127  	}
   128  }
   129  func (m *GenesisState) XXX_Merge(src proto.Message) {
   130  	xxx_messageInfo_GenesisState.Merge(m, src)
   131  }
   132  func (m *GenesisState) XXX_Size() int {
   133  	return m.Size()
   134  }
   135  func (m *GenesisState) XXX_DiscardUnknown() {
   136  	xxx_messageInfo_GenesisState.DiscardUnknown(m)
   137  }
   138  
   139  var xxx_messageInfo_GenesisState proto.InternalMessageInfo
   140  
   141  func (m *GenesisState) GetParams() Params {
   142  	if m != nil {
   143  		return m.Params
   144  	}
   145  	return Params{}
   146  }
   147  
   148  func (m *GenesisState) GetSpotMarkets() []*SpotMarket {
   149  	if m != nil {
   150  		return m.SpotMarkets
   151  	}
   152  	return nil
   153  }
   154  
   155  func (m *GenesisState) GetDerivativeMarkets() []*DerivativeMarket {
   156  	if m != nil {
   157  		return m.DerivativeMarkets
   158  	}
   159  	return nil
   160  }
   161  
   162  func (m *GenesisState) GetSpotOrderbook() []SpotOrderBook {
   163  	if m != nil {
   164  		return m.SpotOrderbook
   165  	}
   166  	return nil
   167  }
   168  
   169  func (m *GenesisState) GetDerivativeOrderbook() []DerivativeOrderBook {
   170  	if m != nil {
   171  		return m.DerivativeOrderbook
   172  	}
   173  	return nil
   174  }
   175  
   176  func (m *GenesisState) GetBalances() []Balance {
   177  	if m != nil {
   178  		return m.Balances
   179  	}
   180  	return nil
   181  }
   182  
   183  func (m *GenesisState) GetPositions() []DerivativePosition {
   184  	if m != nil {
   185  		return m.Positions
   186  	}
   187  	return nil
   188  }
   189  
   190  func (m *GenesisState) GetSubaccountTradeNonces() []SubaccountNonce {
   191  	if m != nil {
   192  		return m.SubaccountTradeNonces
   193  	}
   194  	return nil
   195  }
   196  
   197  func (m *GenesisState) GetExpiryFuturesMarketInfoState() []ExpiryFuturesMarketInfoState {
   198  	if m != nil {
   199  		return m.ExpiryFuturesMarketInfoState
   200  	}
   201  	return nil
   202  }
   203  
   204  func (m *GenesisState) GetPerpetualMarketInfo() []PerpetualMarketInfo {
   205  	if m != nil {
   206  		return m.PerpetualMarketInfo
   207  	}
   208  	return nil
   209  }
   210  
   211  func (m *GenesisState) GetPerpetualMarketFundingState() []PerpetualMarketFundingState {
   212  	if m != nil {
   213  		return m.PerpetualMarketFundingState
   214  	}
   215  	return nil
   216  }
   217  
   218  func (m *GenesisState) GetDerivativeMarketSettlementScheduled() []DerivativeMarketSettlementInfo {
   219  	if m != nil {
   220  		return m.DerivativeMarketSettlementScheduled
   221  	}
   222  	return nil
   223  }
   224  
   225  func (m *GenesisState) GetIsSpotExchangeEnabled() bool {
   226  	if m != nil {
   227  		return m.IsSpotExchangeEnabled
   228  	}
   229  	return false
   230  }
   231  
   232  func (m *GenesisState) GetIsDerivativesExchangeEnabled() bool {
   233  	if m != nil {
   234  		return m.IsDerivativesExchangeEnabled
   235  	}
   236  	return false
   237  }
   238  
   239  func (m *GenesisState) GetTradingRewardCampaignInfo() *TradingRewardCampaignInfo {
   240  	if m != nil {
   241  		return m.TradingRewardCampaignInfo
   242  	}
   243  	return nil
   244  }
   245  
   246  func (m *GenesisState) GetTradingRewardPoolCampaignSchedule() []*CampaignRewardPool {
   247  	if m != nil {
   248  		return m.TradingRewardPoolCampaignSchedule
   249  	}
   250  	return nil
   251  }
   252  
   253  func (m *GenesisState) GetTradingRewardCampaignAccountPoints() []*TradingRewardCampaignAccountPoints {
   254  	if m != nil {
   255  		return m.TradingRewardCampaignAccountPoints
   256  	}
   257  	return nil
   258  }
   259  
   260  func (m *GenesisState) GetFeeDiscountSchedule() *FeeDiscountSchedule {
   261  	if m != nil {
   262  		return m.FeeDiscountSchedule
   263  	}
   264  	return nil
   265  }
   266  
   267  func (m *GenesisState) GetFeeDiscountAccountTierTtl() []*FeeDiscountAccountTierTTL {
   268  	if m != nil {
   269  		return m.FeeDiscountAccountTierTtl
   270  	}
   271  	return nil
   272  }
   273  
   274  func (m *GenesisState) GetFeeDiscountBucketVolumeAccounts() []*FeeDiscountBucketVolumeAccounts {
   275  	if m != nil {
   276  		return m.FeeDiscountBucketVolumeAccounts
   277  	}
   278  	return nil
   279  }
   280  
   281  func (m *GenesisState) GetIsFirstFeeCycleFinished() bool {
   282  	if m != nil {
   283  		return m.IsFirstFeeCycleFinished
   284  	}
   285  	return false
   286  }
   287  
   288  func (m *GenesisState) GetPendingTradingRewardPoolCampaignSchedule() []*CampaignRewardPool {
   289  	if m != nil {
   290  		return m.PendingTradingRewardPoolCampaignSchedule
   291  	}
   292  	return nil
   293  }
   294  
   295  func (m *GenesisState) GetPendingTradingRewardCampaignAccountPoints() []*TradingRewardCampaignAccountPendingPoints {
   296  	if m != nil {
   297  		return m.PendingTradingRewardCampaignAccountPoints
   298  	}
   299  	return nil
   300  }
   301  
   302  func (m *GenesisState) GetRewardsOptOutAddresses() []string {
   303  	if m != nil {
   304  		return m.RewardsOptOutAddresses
   305  	}
   306  	return nil
   307  }
   308  
   309  func (m *GenesisState) GetHistoricalTradeRecords() []*TradeRecords {
   310  	if m != nil {
   311  		return m.HistoricalTradeRecords
   312  	}
   313  	return nil
   314  }
   315  
   316  func (m *GenesisState) GetBinaryOptionsMarkets() []*BinaryOptionsMarket {
   317  	if m != nil {
   318  		return m.BinaryOptionsMarkets
   319  	}
   320  	return nil
   321  }
   322  
   323  func (m *GenesisState) GetBinaryOptionsMarketIdsScheduledForSettlement() []string {
   324  	if m != nil {
   325  		return m.BinaryOptionsMarketIdsScheduledForSettlement
   326  	}
   327  	return nil
   328  }
   329  
   330  func (m *GenesisState) GetSpotMarketIdsScheduledToForceClose() []string {
   331  	if m != nil {
   332  		return m.SpotMarketIdsScheduledToForceClose
   333  	}
   334  	return nil
   335  }
   336  
   337  func (m *GenesisState) GetDenomDecimals() []DenomDecimals {
   338  	if m != nil {
   339  		return m.DenomDecimals
   340  	}
   341  	return nil
   342  }
   343  
   344  func (m *GenesisState) GetConditionalDerivativeOrderbooks() []*ConditionalDerivativeOrderBook {
   345  	if m != nil {
   346  		return m.ConditionalDerivativeOrderbooks
   347  	}
   348  	return nil
   349  }
   350  
   351  func (m *GenesisState) GetMarketFeeMultipliers() []*MarketFeeMultiplier {
   352  	if m != nil {
   353  		return m.MarketFeeMultipliers
   354  	}
   355  	return nil
   356  }
   357  
   358  func (m *GenesisState) GetOrderbookSequences() []*OrderbookSequence {
   359  	if m != nil {
   360  		return m.OrderbookSequences
   361  	}
   362  	return nil
   363  }
   364  
   365  func (m *GenesisState) GetSubaccountVolumes() []*AggregateSubaccountVolumeRecord {
   366  	if m != nil {
   367  		return m.SubaccountVolumes
   368  	}
   369  	return nil
   370  }
   371  
   372  func (m *GenesisState) GetMarketVolumes() []*MarketVolume {
   373  	if m != nil {
   374  		return m.MarketVolumes
   375  	}
   376  	return nil
   377  }
   378  
   379  func (m *GenesisState) GetGrantAuthorizations() []*FullGrantAuthorizations {
   380  	if m != nil {
   381  		return m.GrantAuthorizations
   382  	}
   383  	return nil
   384  }
   385  
   386  func (m *GenesisState) GetActiveGrants() []*FullActiveGrant {
   387  	if m != nil {
   388  		return m.ActiveGrants
   389  	}
   390  	return nil
   391  }
   392  
   393  type OrderbookSequence struct {
   394  	Sequence uint64 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"`
   395  	MarketId string `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   396  }
   397  
   398  func (m *OrderbookSequence) Reset()         { *m = OrderbookSequence{} }
   399  func (m *OrderbookSequence) String() string { return proto.CompactTextString(m) }
   400  func (*OrderbookSequence) ProtoMessage()    {}
   401  func (*OrderbookSequence) Descriptor() ([]byte, []int) {
   402  	return fileDescriptor_c47ec6b98758ed05, []int{1}
   403  }
   404  func (m *OrderbookSequence) XXX_Unmarshal(b []byte) error {
   405  	return m.Unmarshal(b)
   406  }
   407  func (m *OrderbookSequence) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   408  	if deterministic {
   409  		return xxx_messageInfo_OrderbookSequence.Marshal(b, m, deterministic)
   410  	} else {
   411  		b = b[:cap(b)]
   412  		n, err := m.MarshalToSizedBuffer(b)
   413  		if err != nil {
   414  			return nil, err
   415  		}
   416  		return b[:n], nil
   417  	}
   418  }
   419  func (m *OrderbookSequence) XXX_Merge(src proto.Message) {
   420  	xxx_messageInfo_OrderbookSequence.Merge(m, src)
   421  }
   422  func (m *OrderbookSequence) XXX_Size() int {
   423  	return m.Size()
   424  }
   425  func (m *OrderbookSequence) XXX_DiscardUnknown() {
   426  	xxx_messageInfo_OrderbookSequence.DiscardUnknown(m)
   427  }
   428  
   429  var xxx_messageInfo_OrderbookSequence proto.InternalMessageInfo
   430  
   431  func (m *OrderbookSequence) GetSequence() uint64 {
   432  	if m != nil {
   433  		return m.Sequence
   434  	}
   435  	return 0
   436  }
   437  
   438  func (m *OrderbookSequence) GetMarketId() string {
   439  	if m != nil {
   440  		return m.MarketId
   441  	}
   442  	return ""
   443  }
   444  
   445  type FeeDiscountAccountTierTTL struct {
   446  	Account string              `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
   447  	TierTtl *FeeDiscountTierTTL `protobuf:"bytes,2,opt,name=tier_ttl,json=tierTtl,proto3" json:"tier_ttl,omitempty"`
   448  }
   449  
   450  func (m *FeeDiscountAccountTierTTL) Reset()         { *m = FeeDiscountAccountTierTTL{} }
   451  func (m *FeeDiscountAccountTierTTL) String() string { return proto.CompactTextString(m) }
   452  func (*FeeDiscountAccountTierTTL) ProtoMessage()    {}
   453  func (*FeeDiscountAccountTierTTL) Descriptor() ([]byte, []int) {
   454  	return fileDescriptor_c47ec6b98758ed05, []int{2}
   455  }
   456  func (m *FeeDiscountAccountTierTTL) XXX_Unmarshal(b []byte) error {
   457  	return m.Unmarshal(b)
   458  }
   459  func (m *FeeDiscountAccountTierTTL) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   460  	if deterministic {
   461  		return xxx_messageInfo_FeeDiscountAccountTierTTL.Marshal(b, m, deterministic)
   462  	} else {
   463  		b = b[:cap(b)]
   464  		n, err := m.MarshalToSizedBuffer(b)
   465  		if err != nil {
   466  			return nil, err
   467  		}
   468  		return b[:n], nil
   469  	}
   470  }
   471  func (m *FeeDiscountAccountTierTTL) XXX_Merge(src proto.Message) {
   472  	xxx_messageInfo_FeeDiscountAccountTierTTL.Merge(m, src)
   473  }
   474  func (m *FeeDiscountAccountTierTTL) XXX_Size() int {
   475  	return m.Size()
   476  }
   477  func (m *FeeDiscountAccountTierTTL) XXX_DiscardUnknown() {
   478  	xxx_messageInfo_FeeDiscountAccountTierTTL.DiscardUnknown(m)
   479  }
   480  
   481  var xxx_messageInfo_FeeDiscountAccountTierTTL proto.InternalMessageInfo
   482  
   483  func (m *FeeDiscountAccountTierTTL) GetAccount() string {
   484  	if m != nil {
   485  		return m.Account
   486  	}
   487  	return ""
   488  }
   489  
   490  func (m *FeeDiscountAccountTierTTL) GetTierTtl() *FeeDiscountTierTTL {
   491  	if m != nil {
   492  		return m.TierTtl
   493  	}
   494  	return nil
   495  }
   496  
   497  type FeeDiscountBucketVolumeAccounts struct {
   498  	BucketStartTimestamp int64            `protobuf:"varint,1,opt,name=bucket_start_timestamp,json=bucketStartTimestamp,proto3" json:"bucket_start_timestamp,omitempty"`
   499  	AccountVolume        []*AccountVolume `protobuf:"bytes,2,rep,name=account_volume,json=accountVolume,proto3" json:"account_volume,omitempty"`
   500  }
   501  
   502  func (m *FeeDiscountBucketVolumeAccounts) Reset()         { *m = FeeDiscountBucketVolumeAccounts{} }
   503  func (m *FeeDiscountBucketVolumeAccounts) String() string { return proto.CompactTextString(m) }
   504  func (*FeeDiscountBucketVolumeAccounts) ProtoMessage()    {}
   505  func (*FeeDiscountBucketVolumeAccounts) Descriptor() ([]byte, []int) {
   506  	return fileDescriptor_c47ec6b98758ed05, []int{3}
   507  }
   508  func (m *FeeDiscountBucketVolumeAccounts) XXX_Unmarshal(b []byte) error {
   509  	return m.Unmarshal(b)
   510  }
   511  func (m *FeeDiscountBucketVolumeAccounts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   512  	if deterministic {
   513  		return xxx_messageInfo_FeeDiscountBucketVolumeAccounts.Marshal(b, m, deterministic)
   514  	} else {
   515  		b = b[:cap(b)]
   516  		n, err := m.MarshalToSizedBuffer(b)
   517  		if err != nil {
   518  			return nil, err
   519  		}
   520  		return b[:n], nil
   521  	}
   522  }
   523  func (m *FeeDiscountBucketVolumeAccounts) XXX_Merge(src proto.Message) {
   524  	xxx_messageInfo_FeeDiscountBucketVolumeAccounts.Merge(m, src)
   525  }
   526  func (m *FeeDiscountBucketVolumeAccounts) XXX_Size() int {
   527  	return m.Size()
   528  }
   529  func (m *FeeDiscountBucketVolumeAccounts) XXX_DiscardUnknown() {
   530  	xxx_messageInfo_FeeDiscountBucketVolumeAccounts.DiscardUnknown(m)
   531  }
   532  
   533  var xxx_messageInfo_FeeDiscountBucketVolumeAccounts proto.InternalMessageInfo
   534  
   535  func (m *FeeDiscountBucketVolumeAccounts) GetBucketStartTimestamp() int64 {
   536  	if m != nil {
   537  		return m.BucketStartTimestamp
   538  	}
   539  	return 0
   540  }
   541  
   542  func (m *FeeDiscountBucketVolumeAccounts) GetAccountVolume() []*AccountVolume {
   543  	if m != nil {
   544  		return m.AccountVolume
   545  	}
   546  	return nil
   547  }
   548  
   549  type AccountVolume struct {
   550  	Account string                      `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
   551  	Volume  cosmossdk_io_math.LegacyDec `protobuf:"bytes,2,opt,name=volume,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"volume"`
   552  }
   553  
   554  func (m *AccountVolume) Reset()         { *m = AccountVolume{} }
   555  func (m *AccountVolume) String() string { return proto.CompactTextString(m) }
   556  func (*AccountVolume) ProtoMessage()    {}
   557  func (*AccountVolume) Descriptor() ([]byte, []int) {
   558  	return fileDescriptor_c47ec6b98758ed05, []int{4}
   559  }
   560  func (m *AccountVolume) XXX_Unmarshal(b []byte) error {
   561  	return m.Unmarshal(b)
   562  }
   563  func (m *AccountVolume) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   564  	if deterministic {
   565  		return xxx_messageInfo_AccountVolume.Marshal(b, m, deterministic)
   566  	} else {
   567  		b = b[:cap(b)]
   568  		n, err := m.MarshalToSizedBuffer(b)
   569  		if err != nil {
   570  			return nil, err
   571  		}
   572  		return b[:n], nil
   573  	}
   574  }
   575  func (m *AccountVolume) XXX_Merge(src proto.Message) {
   576  	xxx_messageInfo_AccountVolume.Merge(m, src)
   577  }
   578  func (m *AccountVolume) XXX_Size() int {
   579  	return m.Size()
   580  }
   581  func (m *AccountVolume) XXX_DiscardUnknown() {
   582  	xxx_messageInfo_AccountVolume.DiscardUnknown(m)
   583  }
   584  
   585  var xxx_messageInfo_AccountVolume proto.InternalMessageInfo
   586  
   587  func (m *AccountVolume) GetAccount() string {
   588  	if m != nil {
   589  		return m.Account
   590  	}
   591  	return ""
   592  }
   593  
   594  type TradingRewardCampaignAccountPoints struct {
   595  	Account string                      `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
   596  	Points  cosmossdk_io_math.LegacyDec `protobuf:"bytes,2,opt,name=points,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"points"`
   597  }
   598  
   599  func (m *TradingRewardCampaignAccountPoints) Reset()         { *m = TradingRewardCampaignAccountPoints{} }
   600  func (m *TradingRewardCampaignAccountPoints) String() string { return proto.CompactTextString(m) }
   601  func (*TradingRewardCampaignAccountPoints) ProtoMessage()    {}
   602  func (*TradingRewardCampaignAccountPoints) Descriptor() ([]byte, []int) {
   603  	return fileDescriptor_c47ec6b98758ed05, []int{5}
   604  }
   605  func (m *TradingRewardCampaignAccountPoints) XXX_Unmarshal(b []byte) error {
   606  	return m.Unmarshal(b)
   607  }
   608  func (m *TradingRewardCampaignAccountPoints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   609  	if deterministic {
   610  		return xxx_messageInfo_TradingRewardCampaignAccountPoints.Marshal(b, m, deterministic)
   611  	} else {
   612  		b = b[:cap(b)]
   613  		n, err := m.MarshalToSizedBuffer(b)
   614  		if err != nil {
   615  			return nil, err
   616  		}
   617  		return b[:n], nil
   618  	}
   619  }
   620  func (m *TradingRewardCampaignAccountPoints) XXX_Merge(src proto.Message) {
   621  	xxx_messageInfo_TradingRewardCampaignAccountPoints.Merge(m, src)
   622  }
   623  func (m *TradingRewardCampaignAccountPoints) XXX_Size() int {
   624  	return m.Size()
   625  }
   626  func (m *TradingRewardCampaignAccountPoints) XXX_DiscardUnknown() {
   627  	xxx_messageInfo_TradingRewardCampaignAccountPoints.DiscardUnknown(m)
   628  }
   629  
   630  var xxx_messageInfo_TradingRewardCampaignAccountPoints proto.InternalMessageInfo
   631  
   632  func (m *TradingRewardCampaignAccountPoints) GetAccount() string {
   633  	if m != nil {
   634  		return m.Account
   635  	}
   636  	return ""
   637  }
   638  
   639  type TradingRewardCampaignAccountPendingPoints struct {
   640  	RewardPoolStartTimestamp int64                                 `protobuf:"varint,1,opt,name=reward_pool_start_timestamp,json=rewardPoolStartTimestamp,proto3" json:"reward_pool_start_timestamp,omitempty"`
   641  	AccountPoints            []*TradingRewardCampaignAccountPoints `protobuf:"bytes,2,rep,name=account_points,json=accountPoints,proto3" json:"account_points,omitempty"`
   642  }
   643  
   644  func (m *TradingRewardCampaignAccountPendingPoints) Reset() {
   645  	*m = TradingRewardCampaignAccountPendingPoints{}
   646  }
   647  func (m *TradingRewardCampaignAccountPendingPoints) String() string {
   648  	return proto.CompactTextString(m)
   649  }
   650  func (*TradingRewardCampaignAccountPendingPoints) ProtoMessage() {}
   651  func (*TradingRewardCampaignAccountPendingPoints) Descriptor() ([]byte, []int) {
   652  	return fileDescriptor_c47ec6b98758ed05, []int{6}
   653  }
   654  func (m *TradingRewardCampaignAccountPendingPoints) XXX_Unmarshal(b []byte) error {
   655  	return m.Unmarshal(b)
   656  }
   657  func (m *TradingRewardCampaignAccountPendingPoints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   658  	if deterministic {
   659  		return xxx_messageInfo_TradingRewardCampaignAccountPendingPoints.Marshal(b, m, deterministic)
   660  	} else {
   661  		b = b[:cap(b)]
   662  		n, err := m.MarshalToSizedBuffer(b)
   663  		if err != nil {
   664  			return nil, err
   665  		}
   666  		return b[:n], nil
   667  	}
   668  }
   669  func (m *TradingRewardCampaignAccountPendingPoints) XXX_Merge(src proto.Message) {
   670  	xxx_messageInfo_TradingRewardCampaignAccountPendingPoints.Merge(m, src)
   671  }
   672  func (m *TradingRewardCampaignAccountPendingPoints) XXX_Size() int {
   673  	return m.Size()
   674  }
   675  func (m *TradingRewardCampaignAccountPendingPoints) XXX_DiscardUnknown() {
   676  	xxx_messageInfo_TradingRewardCampaignAccountPendingPoints.DiscardUnknown(m)
   677  }
   678  
   679  var xxx_messageInfo_TradingRewardCampaignAccountPendingPoints proto.InternalMessageInfo
   680  
   681  func (m *TradingRewardCampaignAccountPendingPoints) GetRewardPoolStartTimestamp() int64 {
   682  	if m != nil {
   683  		return m.RewardPoolStartTimestamp
   684  	}
   685  	return 0
   686  }
   687  
   688  func (m *TradingRewardCampaignAccountPendingPoints) GetAccountPoints() []*TradingRewardCampaignAccountPoints {
   689  	if m != nil {
   690  		return m.AccountPoints
   691  	}
   692  	return nil
   693  }
   694  
   695  // Spot Exchange Limit Orderbook
   696  type SpotOrderBook struct {
   697  	MarketId  string            `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   698  	IsBuySide bool              `protobuf:"varint,2,opt,name=isBuySide,proto3" json:"isBuySide,omitempty"`
   699  	Orders    []*SpotLimitOrder `protobuf:"bytes,3,rep,name=orders,proto3" json:"orders,omitempty"`
   700  }
   701  
   702  func (m *SpotOrderBook) Reset()         { *m = SpotOrderBook{} }
   703  func (m *SpotOrderBook) String() string { return proto.CompactTextString(m) }
   704  func (*SpotOrderBook) ProtoMessage()    {}
   705  func (*SpotOrderBook) Descriptor() ([]byte, []int) {
   706  	return fileDescriptor_c47ec6b98758ed05, []int{7}
   707  }
   708  func (m *SpotOrderBook) XXX_Unmarshal(b []byte) error {
   709  	return m.Unmarshal(b)
   710  }
   711  func (m *SpotOrderBook) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   712  	if deterministic {
   713  		return xxx_messageInfo_SpotOrderBook.Marshal(b, m, deterministic)
   714  	} else {
   715  		b = b[:cap(b)]
   716  		n, err := m.MarshalToSizedBuffer(b)
   717  		if err != nil {
   718  			return nil, err
   719  		}
   720  		return b[:n], nil
   721  	}
   722  }
   723  func (m *SpotOrderBook) XXX_Merge(src proto.Message) {
   724  	xxx_messageInfo_SpotOrderBook.Merge(m, src)
   725  }
   726  func (m *SpotOrderBook) XXX_Size() int {
   727  	return m.Size()
   728  }
   729  func (m *SpotOrderBook) XXX_DiscardUnknown() {
   730  	xxx_messageInfo_SpotOrderBook.DiscardUnknown(m)
   731  }
   732  
   733  var xxx_messageInfo_SpotOrderBook proto.InternalMessageInfo
   734  
   735  // Derivative Exchange Limit Orderbook
   736  type DerivativeOrderBook struct {
   737  	MarketId  string                  `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   738  	IsBuySide bool                    `protobuf:"varint,2,opt,name=isBuySide,proto3" json:"isBuySide,omitempty"`
   739  	Orders    []*DerivativeLimitOrder `protobuf:"bytes,3,rep,name=orders,proto3" json:"orders,omitempty"`
   740  }
   741  
   742  func (m *DerivativeOrderBook) Reset()         { *m = DerivativeOrderBook{} }
   743  func (m *DerivativeOrderBook) String() string { return proto.CompactTextString(m) }
   744  func (*DerivativeOrderBook) ProtoMessage()    {}
   745  func (*DerivativeOrderBook) Descriptor() ([]byte, []int) {
   746  	return fileDescriptor_c47ec6b98758ed05, []int{8}
   747  }
   748  func (m *DerivativeOrderBook) XXX_Unmarshal(b []byte) error {
   749  	return m.Unmarshal(b)
   750  }
   751  func (m *DerivativeOrderBook) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   752  	if deterministic {
   753  		return xxx_messageInfo_DerivativeOrderBook.Marshal(b, m, deterministic)
   754  	} else {
   755  		b = b[:cap(b)]
   756  		n, err := m.MarshalToSizedBuffer(b)
   757  		if err != nil {
   758  			return nil, err
   759  		}
   760  		return b[:n], nil
   761  	}
   762  }
   763  func (m *DerivativeOrderBook) XXX_Merge(src proto.Message) {
   764  	xxx_messageInfo_DerivativeOrderBook.Merge(m, src)
   765  }
   766  func (m *DerivativeOrderBook) XXX_Size() int {
   767  	return m.Size()
   768  }
   769  func (m *DerivativeOrderBook) XXX_DiscardUnknown() {
   770  	xxx_messageInfo_DerivativeOrderBook.DiscardUnknown(m)
   771  }
   772  
   773  var xxx_messageInfo_DerivativeOrderBook proto.InternalMessageInfo
   774  
   775  // Orderbook containing limit & market conditional orders
   776  type ConditionalDerivativeOrderBook struct {
   777  	MarketId         string                   `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   778  	LimitBuyOrders   []*DerivativeLimitOrder  `protobuf:"bytes,2,rep,name=limit_buy_orders,json=limitBuyOrders,proto3" json:"limit_buy_orders,omitempty"`
   779  	MarketBuyOrders  []*DerivativeMarketOrder `protobuf:"bytes,3,rep,name=market_buy_orders,json=marketBuyOrders,proto3" json:"market_buy_orders,omitempty"`
   780  	LimitSellOrders  []*DerivativeLimitOrder  `protobuf:"bytes,4,rep,name=limit_sell_orders,json=limitSellOrders,proto3" json:"limit_sell_orders,omitempty"`
   781  	MarketSellOrders []*DerivativeMarketOrder `protobuf:"bytes,5,rep,name=market_sell_orders,json=marketSellOrders,proto3" json:"market_sell_orders,omitempty"`
   782  }
   783  
   784  func (m *ConditionalDerivativeOrderBook) Reset()         { *m = ConditionalDerivativeOrderBook{} }
   785  func (m *ConditionalDerivativeOrderBook) String() string { return proto.CompactTextString(m) }
   786  func (*ConditionalDerivativeOrderBook) ProtoMessage()    {}
   787  func (*ConditionalDerivativeOrderBook) Descriptor() ([]byte, []int) {
   788  	return fileDescriptor_c47ec6b98758ed05, []int{9}
   789  }
   790  func (m *ConditionalDerivativeOrderBook) XXX_Unmarshal(b []byte) error {
   791  	return m.Unmarshal(b)
   792  }
   793  func (m *ConditionalDerivativeOrderBook) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   794  	if deterministic {
   795  		return xxx_messageInfo_ConditionalDerivativeOrderBook.Marshal(b, m, deterministic)
   796  	} else {
   797  		b = b[:cap(b)]
   798  		n, err := m.MarshalToSizedBuffer(b)
   799  		if err != nil {
   800  			return nil, err
   801  		}
   802  		return b[:n], nil
   803  	}
   804  }
   805  func (m *ConditionalDerivativeOrderBook) XXX_Merge(src proto.Message) {
   806  	xxx_messageInfo_ConditionalDerivativeOrderBook.Merge(m, src)
   807  }
   808  func (m *ConditionalDerivativeOrderBook) XXX_Size() int {
   809  	return m.Size()
   810  }
   811  func (m *ConditionalDerivativeOrderBook) XXX_DiscardUnknown() {
   812  	xxx_messageInfo_ConditionalDerivativeOrderBook.DiscardUnknown(m)
   813  }
   814  
   815  var xxx_messageInfo_ConditionalDerivativeOrderBook proto.InternalMessageInfo
   816  
   817  type Balance struct {
   818  	SubaccountId string   `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"`
   819  	Denom        string   `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"`
   820  	Deposits     *Deposit `protobuf:"bytes,3,opt,name=deposits,proto3" json:"deposits,omitempty"`
   821  }
   822  
   823  func (m *Balance) Reset()         { *m = Balance{} }
   824  func (m *Balance) String() string { return proto.CompactTextString(m) }
   825  func (*Balance) ProtoMessage()    {}
   826  func (*Balance) Descriptor() ([]byte, []int) {
   827  	return fileDescriptor_c47ec6b98758ed05, []int{10}
   828  }
   829  func (m *Balance) XXX_Unmarshal(b []byte) error {
   830  	return m.Unmarshal(b)
   831  }
   832  func (m *Balance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   833  	if deterministic {
   834  		return xxx_messageInfo_Balance.Marshal(b, m, deterministic)
   835  	} else {
   836  		b = b[:cap(b)]
   837  		n, err := m.MarshalToSizedBuffer(b)
   838  		if err != nil {
   839  			return nil, err
   840  		}
   841  		return b[:n], nil
   842  	}
   843  }
   844  func (m *Balance) XXX_Merge(src proto.Message) {
   845  	xxx_messageInfo_Balance.Merge(m, src)
   846  }
   847  func (m *Balance) XXX_Size() int {
   848  	return m.Size()
   849  }
   850  func (m *Balance) XXX_DiscardUnknown() {
   851  	xxx_messageInfo_Balance.DiscardUnknown(m)
   852  }
   853  
   854  var xxx_messageInfo_Balance proto.InternalMessageInfo
   855  
   856  type DerivativePosition struct {
   857  	SubaccountId string    `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"`
   858  	MarketId     string    `protobuf:"bytes,2,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   859  	Position     *Position `protobuf:"bytes,3,opt,name=position,proto3" json:"position,omitempty"`
   860  }
   861  
   862  func (m *DerivativePosition) Reset()         { *m = DerivativePosition{} }
   863  func (m *DerivativePosition) String() string { return proto.CompactTextString(m) }
   864  func (*DerivativePosition) ProtoMessage()    {}
   865  func (*DerivativePosition) Descriptor() ([]byte, []int) {
   866  	return fileDescriptor_c47ec6b98758ed05, []int{11}
   867  }
   868  func (m *DerivativePosition) XXX_Unmarshal(b []byte) error {
   869  	return m.Unmarshal(b)
   870  }
   871  func (m *DerivativePosition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   872  	if deterministic {
   873  		return xxx_messageInfo_DerivativePosition.Marshal(b, m, deterministic)
   874  	} else {
   875  		b = b[:cap(b)]
   876  		n, err := m.MarshalToSizedBuffer(b)
   877  		if err != nil {
   878  			return nil, err
   879  		}
   880  		return b[:n], nil
   881  	}
   882  }
   883  func (m *DerivativePosition) XXX_Merge(src proto.Message) {
   884  	xxx_messageInfo_DerivativePosition.Merge(m, src)
   885  }
   886  func (m *DerivativePosition) XXX_Size() int {
   887  	return m.Size()
   888  }
   889  func (m *DerivativePosition) XXX_DiscardUnknown() {
   890  	xxx_messageInfo_DerivativePosition.DiscardUnknown(m)
   891  }
   892  
   893  var xxx_messageInfo_DerivativePosition proto.InternalMessageInfo
   894  
   895  type SubaccountNonce struct {
   896  	SubaccountId         string               `protobuf:"bytes,1,opt,name=subaccount_id,json=subaccountId,proto3" json:"subaccount_id,omitempty"`
   897  	SubaccountTradeNonce SubaccountTradeNonce `protobuf:"bytes,2,opt,name=subaccount_trade_nonce,json=subaccountTradeNonce,proto3" json:"subaccount_trade_nonce"`
   898  }
   899  
   900  func (m *SubaccountNonce) Reset()         { *m = SubaccountNonce{} }
   901  func (m *SubaccountNonce) String() string { return proto.CompactTextString(m) }
   902  func (*SubaccountNonce) ProtoMessage()    {}
   903  func (*SubaccountNonce) Descriptor() ([]byte, []int) {
   904  	return fileDescriptor_c47ec6b98758ed05, []int{12}
   905  }
   906  func (m *SubaccountNonce) XXX_Unmarshal(b []byte) error {
   907  	return m.Unmarshal(b)
   908  }
   909  func (m *SubaccountNonce) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   910  	if deterministic {
   911  		return xxx_messageInfo_SubaccountNonce.Marshal(b, m, deterministic)
   912  	} else {
   913  		b = b[:cap(b)]
   914  		n, err := m.MarshalToSizedBuffer(b)
   915  		if err != nil {
   916  			return nil, err
   917  		}
   918  		return b[:n], nil
   919  	}
   920  }
   921  func (m *SubaccountNonce) XXX_Merge(src proto.Message) {
   922  	xxx_messageInfo_SubaccountNonce.Merge(m, src)
   923  }
   924  func (m *SubaccountNonce) XXX_Size() int {
   925  	return m.Size()
   926  }
   927  func (m *SubaccountNonce) XXX_DiscardUnknown() {
   928  	xxx_messageInfo_SubaccountNonce.DiscardUnknown(m)
   929  }
   930  
   931  var xxx_messageInfo_SubaccountNonce proto.InternalMessageInfo
   932  
   933  type ExpiryFuturesMarketInfoState struct {
   934  	MarketId   string                   `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   935  	MarketInfo *ExpiryFuturesMarketInfo `protobuf:"bytes,2,opt,name=market_info,json=marketInfo,proto3" json:"market_info,omitempty"`
   936  }
   937  
   938  func (m *ExpiryFuturesMarketInfoState) Reset()         { *m = ExpiryFuturesMarketInfoState{} }
   939  func (m *ExpiryFuturesMarketInfoState) String() string { return proto.CompactTextString(m) }
   940  func (*ExpiryFuturesMarketInfoState) ProtoMessage()    {}
   941  func (*ExpiryFuturesMarketInfoState) Descriptor() ([]byte, []int) {
   942  	return fileDescriptor_c47ec6b98758ed05, []int{13}
   943  }
   944  func (m *ExpiryFuturesMarketInfoState) XXX_Unmarshal(b []byte) error {
   945  	return m.Unmarshal(b)
   946  }
   947  func (m *ExpiryFuturesMarketInfoState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   948  	if deterministic {
   949  		return xxx_messageInfo_ExpiryFuturesMarketInfoState.Marshal(b, m, deterministic)
   950  	} else {
   951  		b = b[:cap(b)]
   952  		n, err := m.MarshalToSizedBuffer(b)
   953  		if err != nil {
   954  			return nil, err
   955  		}
   956  		return b[:n], nil
   957  	}
   958  }
   959  func (m *ExpiryFuturesMarketInfoState) XXX_Merge(src proto.Message) {
   960  	xxx_messageInfo_ExpiryFuturesMarketInfoState.Merge(m, src)
   961  }
   962  func (m *ExpiryFuturesMarketInfoState) XXX_Size() int {
   963  	return m.Size()
   964  }
   965  func (m *ExpiryFuturesMarketInfoState) XXX_DiscardUnknown() {
   966  	xxx_messageInfo_ExpiryFuturesMarketInfoState.DiscardUnknown(m)
   967  }
   968  
   969  var xxx_messageInfo_ExpiryFuturesMarketInfoState proto.InternalMessageInfo
   970  
   971  func (m *ExpiryFuturesMarketInfoState) GetMarketId() string {
   972  	if m != nil {
   973  		return m.MarketId
   974  	}
   975  	return ""
   976  }
   977  
   978  func (m *ExpiryFuturesMarketInfoState) GetMarketInfo() *ExpiryFuturesMarketInfo {
   979  	if m != nil {
   980  		return m.MarketInfo
   981  	}
   982  	return nil
   983  }
   984  
   985  type PerpetualMarketFundingState struct {
   986  	MarketId string                  `protobuf:"bytes,1,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   987  	Funding  *PerpetualMarketFunding `protobuf:"bytes,2,opt,name=funding,proto3" json:"funding,omitempty"`
   988  }
   989  
   990  func (m *PerpetualMarketFundingState) Reset()         { *m = PerpetualMarketFundingState{} }
   991  func (m *PerpetualMarketFundingState) String() string { return proto.CompactTextString(m) }
   992  func (*PerpetualMarketFundingState) ProtoMessage()    {}
   993  func (*PerpetualMarketFundingState) Descriptor() ([]byte, []int) {
   994  	return fileDescriptor_c47ec6b98758ed05, []int{14}
   995  }
   996  func (m *PerpetualMarketFundingState) XXX_Unmarshal(b []byte) error {
   997  	return m.Unmarshal(b)
   998  }
   999  func (m *PerpetualMarketFundingState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1000  	if deterministic {
  1001  		return xxx_messageInfo_PerpetualMarketFundingState.Marshal(b, m, deterministic)
  1002  	} else {
  1003  		b = b[:cap(b)]
  1004  		n, err := m.MarshalToSizedBuffer(b)
  1005  		if err != nil {
  1006  			return nil, err
  1007  		}
  1008  		return b[:n], nil
  1009  	}
  1010  }
  1011  func (m *PerpetualMarketFundingState) XXX_Merge(src proto.Message) {
  1012  	xxx_messageInfo_PerpetualMarketFundingState.Merge(m, src)
  1013  }
  1014  func (m *PerpetualMarketFundingState) XXX_Size() int {
  1015  	return m.Size()
  1016  }
  1017  func (m *PerpetualMarketFundingState) XXX_DiscardUnknown() {
  1018  	xxx_messageInfo_PerpetualMarketFundingState.DiscardUnknown(m)
  1019  }
  1020  
  1021  var xxx_messageInfo_PerpetualMarketFundingState proto.InternalMessageInfo
  1022  
  1023  func (m *PerpetualMarketFundingState) GetMarketId() string {
  1024  	if m != nil {
  1025  		return m.MarketId
  1026  	}
  1027  	return ""
  1028  }
  1029  
  1030  func (m *PerpetualMarketFundingState) GetFunding() *PerpetualMarketFunding {
  1031  	if m != nil {
  1032  		return m.Funding
  1033  	}
  1034  	return nil
  1035  }
  1036  
  1037  type FullGrantAuthorizations struct {
  1038  	Granter                    string                `protobuf:"bytes,1,opt,name=granter,proto3" json:"granter,omitempty"`
  1039  	TotalGrantAmount           cosmossdk_io_math.Int `protobuf:"bytes,2,opt,name=total_grant_amount,json=totalGrantAmount,proto3,customtype=cosmossdk.io/math.Int" json:"total_grant_amount"`
  1040  	LastDelegationsCheckedTime int64                 `protobuf:"varint,3,opt,name=last_delegations_checked_time,json=lastDelegationsCheckedTime,proto3" json:"last_delegations_checked_time,omitempty"`
  1041  	Grants                     []*GrantAuthorization `protobuf:"bytes,4,rep,name=grants,proto3" json:"grants,omitempty"`
  1042  }
  1043  
  1044  func (m *FullGrantAuthorizations) Reset()         { *m = FullGrantAuthorizations{} }
  1045  func (m *FullGrantAuthorizations) String() string { return proto.CompactTextString(m) }
  1046  func (*FullGrantAuthorizations) ProtoMessage()    {}
  1047  func (*FullGrantAuthorizations) Descriptor() ([]byte, []int) {
  1048  	return fileDescriptor_c47ec6b98758ed05, []int{15}
  1049  }
  1050  func (m *FullGrantAuthorizations) XXX_Unmarshal(b []byte) error {
  1051  	return m.Unmarshal(b)
  1052  }
  1053  func (m *FullGrantAuthorizations) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1054  	if deterministic {
  1055  		return xxx_messageInfo_FullGrantAuthorizations.Marshal(b, m, deterministic)
  1056  	} else {
  1057  		b = b[:cap(b)]
  1058  		n, err := m.MarshalToSizedBuffer(b)
  1059  		if err != nil {
  1060  			return nil, err
  1061  		}
  1062  		return b[:n], nil
  1063  	}
  1064  }
  1065  func (m *FullGrantAuthorizations) XXX_Merge(src proto.Message) {
  1066  	xxx_messageInfo_FullGrantAuthorizations.Merge(m, src)
  1067  }
  1068  func (m *FullGrantAuthorizations) XXX_Size() int {
  1069  	return m.Size()
  1070  }
  1071  func (m *FullGrantAuthorizations) XXX_DiscardUnknown() {
  1072  	xxx_messageInfo_FullGrantAuthorizations.DiscardUnknown(m)
  1073  }
  1074  
  1075  var xxx_messageInfo_FullGrantAuthorizations proto.InternalMessageInfo
  1076  
  1077  func (m *FullGrantAuthorizations) GetGranter() string {
  1078  	if m != nil {
  1079  		return m.Granter
  1080  	}
  1081  	return ""
  1082  }
  1083  
  1084  func (m *FullGrantAuthorizations) GetLastDelegationsCheckedTime() int64 {
  1085  	if m != nil {
  1086  		return m.LastDelegationsCheckedTime
  1087  	}
  1088  	return 0
  1089  }
  1090  
  1091  func (m *FullGrantAuthorizations) GetGrants() []*GrantAuthorization {
  1092  	if m != nil {
  1093  		return m.Grants
  1094  	}
  1095  	return nil
  1096  }
  1097  
  1098  type FullActiveGrant struct {
  1099  	Grantee     string       `protobuf:"bytes,1,opt,name=grantee,proto3" json:"grantee,omitempty"`
  1100  	ActiveGrant *ActiveGrant `protobuf:"bytes,2,opt,name=active_grant,json=activeGrant,proto3" json:"active_grant,omitempty"`
  1101  }
  1102  
  1103  func (m *FullActiveGrant) Reset()         { *m = FullActiveGrant{} }
  1104  func (m *FullActiveGrant) String() string { return proto.CompactTextString(m) }
  1105  func (*FullActiveGrant) ProtoMessage()    {}
  1106  func (*FullActiveGrant) Descriptor() ([]byte, []int) {
  1107  	return fileDescriptor_c47ec6b98758ed05, []int{16}
  1108  }
  1109  func (m *FullActiveGrant) XXX_Unmarshal(b []byte) error {
  1110  	return m.Unmarshal(b)
  1111  }
  1112  func (m *FullActiveGrant) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1113  	if deterministic {
  1114  		return xxx_messageInfo_FullActiveGrant.Marshal(b, m, deterministic)
  1115  	} else {
  1116  		b = b[:cap(b)]
  1117  		n, err := m.MarshalToSizedBuffer(b)
  1118  		if err != nil {
  1119  			return nil, err
  1120  		}
  1121  		return b[:n], nil
  1122  	}
  1123  }
  1124  func (m *FullActiveGrant) XXX_Merge(src proto.Message) {
  1125  	xxx_messageInfo_FullActiveGrant.Merge(m, src)
  1126  }
  1127  func (m *FullActiveGrant) XXX_Size() int {
  1128  	return m.Size()
  1129  }
  1130  func (m *FullActiveGrant) XXX_DiscardUnknown() {
  1131  	xxx_messageInfo_FullActiveGrant.DiscardUnknown(m)
  1132  }
  1133  
  1134  var xxx_messageInfo_FullActiveGrant proto.InternalMessageInfo
  1135  
  1136  func (m *FullActiveGrant) GetGrantee() string {
  1137  	if m != nil {
  1138  		return m.Grantee
  1139  	}
  1140  	return ""
  1141  }
  1142  
  1143  func (m *FullActiveGrant) GetActiveGrant() *ActiveGrant {
  1144  	if m != nil {
  1145  		return m.ActiveGrant
  1146  	}
  1147  	return nil
  1148  }
  1149  
  1150  func init() {
  1151  	proto.RegisterType((*GenesisState)(nil), "injective.exchange.v1beta1.GenesisState")
  1152  	proto.RegisterType((*OrderbookSequence)(nil), "injective.exchange.v1beta1.OrderbookSequence")
  1153  	proto.RegisterType((*FeeDiscountAccountTierTTL)(nil), "injective.exchange.v1beta1.FeeDiscountAccountTierTTL")
  1154  	proto.RegisterType((*FeeDiscountBucketVolumeAccounts)(nil), "injective.exchange.v1beta1.FeeDiscountBucketVolumeAccounts")
  1155  	proto.RegisterType((*AccountVolume)(nil), "injective.exchange.v1beta1.AccountVolume")
  1156  	proto.RegisterType((*TradingRewardCampaignAccountPoints)(nil), "injective.exchange.v1beta1.TradingRewardCampaignAccountPoints")
  1157  	proto.RegisterType((*TradingRewardCampaignAccountPendingPoints)(nil), "injective.exchange.v1beta1.TradingRewardCampaignAccountPendingPoints")
  1158  	proto.RegisterType((*SpotOrderBook)(nil), "injective.exchange.v1beta1.SpotOrderBook")
  1159  	proto.RegisterType((*DerivativeOrderBook)(nil), "injective.exchange.v1beta1.DerivativeOrderBook")
  1160  	proto.RegisterType((*ConditionalDerivativeOrderBook)(nil), "injective.exchange.v1beta1.ConditionalDerivativeOrderBook")
  1161  	proto.RegisterType((*Balance)(nil), "injective.exchange.v1beta1.Balance")
  1162  	proto.RegisterType((*DerivativePosition)(nil), "injective.exchange.v1beta1.DerivativePosition")
  1163  	proto.RegisterType((*SubaccountNonce)(nil), "injective.exchange.v1beta1.SubaccountNonce")
  1164  	proto.RegisterType((*ExpiryFuturesMarketInfoState)(nil), "injective.exchange.v1beta1.ExpiryFuturesMarketInfoState")
  1165  	proto.RegisterType((*PerpetualMarketFundingState)(nil), "injective.exchange.v1beta1.PerpetualMarketFundingState")
  1166  	proto.RegisterType((*FullGrantAuthorizations)(nil), "injective.exchange.v1beta1.FullGrantAuthorizations")
  1167  	proto.RegisterType((*FullActiveGrant)(nil), "injective.exchange.v1beta1.FullActiveGrant")
  1168  }
  1169  
  1170  func init() {
  1171  	proto.RegisterFile("injective/exchange/v1beta1/genesis.proto", fileDescriptor_c47ec6b98758ed05)
  1172  }
  1173  
  1174  var fileDescriptor_c47ec6b98758ed05 = []byte{
  1175  	// 2044 bytes of a gzipped FileDescriptorProto
  1176  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0xcb, 0x6f, 0x24, 0x47,
  1177  	0x19, 0x77, 0xdb, 0x5e, 0x7b, 0xfc, 0xf9, 0xb5, 0x2e, 0x3f, 0xb6, 0xfd, 0xf6, 0x8e, 0xc3, 0x32,
  1178  	0x0b, 0xd9, 0x71, 0x76, 0x97, 0x28, 0x90, 0xf0, 0x88, 0xc7, 0x8f, 0x60, 0x70, 0x62, 0xab, 0x3d,
  1179  	0xca, 0x21, 0x3c, 0x5a, 0x3d, 0xdd, 0x35, 0x33, 0x15, 0x77, 0x77, 0x0d, 0x5d, 0xd5, 0xde, 0x35,
  1180  	0x5c, 0x22, 0x0e, 0x28, 0x88, 0x43, 0x00, 0x09, 0x89, 0x63, 0x84, 0x38, 0x80, 0x90, 0xf8, 0x1f,
  1181  	0xb8, 0xe5, 0x18, 0x6e, 0x88, 0x43, 0x84, 0x76, 0x2f, 0xfc, 0x19, 0xa8, 0xaa, 0xab, 0x1f, 0xf3,
  1182  	0xea, 0x19, 0x9b, 0xdc, 0xa6, 0xaa, 0xbe, 0xef, 0xf7, 0xfb, 0xd5, 0xf3, 0xfb, 0xfa, 0x1b, 0x28,
  1183  	0x11, 0xff, 0x43, 0x6c, 0x73, 0x72, 0x85, 0xf7, 0xf0, 0x73, 0xbb, 0x69, 0xf9, 0x0d, 0xbc, 0x77,
  1184  	0xf5, 0xb8, 0x86, 0xb9, 0xf5, 0x78, 0xaf, 0x81, 0x7d, 0xcc, 0x08, 0x2b, 0xb7, 0x02, 0xca, 0x29,
  1185  	0x5a, 0x4b, 0x2c, 0xcb, 0xb1, 0x65, 0x59, 0x59, 0xae, 0x3d, 0xcc, 0x41, 0x49, 0x8c, 0x25, 0xcc,
  1186  	0xda, 0x6e, 0x8e, 0x29, 0x7f, 0xae, 0x8c, 0x96, 0x1a, 0xb4, 0x41, 0xe5, 0xcf, 0x3d, 0xf1, 0x2b,
  1187  	0xea, 0x2d, 0xfe, 0x6d, 0x13, 0x66, 0xde, 0x89, 0x34, 0x5d, 0x70, 0x8b, 0x63, 0xf4, 0x36, 0x4c,
  1188  	0xb4, 0xac, 0xc0, 0xf2, 0x98, 0xae, 0xed, 0x68, 0xa5, 0xe9, 0x27, 0xc5, 0x72, 0x7f, 0x8d, 0xe5,
  1189  	0x73, 0x69, 0x59, 0x19, 0xff, 0xec, 0x8b, 0xed, 0x11, 0x43, 0xf9, 0xa1, 0x13, 0x98, 0x61, 0x2d,
  1190  	0xca, 0x4d, 0xcf, 0x0a, 0x2e, 0x31, 0x67, 0xfa, 0xe8, 0xce, 0x58, 0x69, 0xfa, 0xc9, 0x83, 0x3c,
  1191  	0x9c, 0x8b, 0x16, 0xe5, 0xef, 0x4a, 0x73, 0x63, 0x9a, 0x25, 0xbf, 0x19, 0xfa, 0x11, 0x20, 0x07,
  1192  	0x07, 0xe4, 0xca, 0x12, 0x6e, 0x09, 0xe0, 0x98, 0x04, 0x7c, 0x35, 0x0f, 0xf0, 0x30, 0xf1, 0x52,
  1193  	0xb0, 0x0b, 0x4e, 0x47, 0x0f, 0x43, 0xef, 0xc3, 0x9c, 0xd4, 0x49, 0x03, 0x07, 0x07, 0x35, 0x4a,
  1194  	0x2f, 0xf5, 0x71, 0x09, 0xfc, 0x70, 0x90, 0xd2, 0x33, 0xe1, 0x50, 0xa1, 0xf4, 0x52, 0x4d, 0x7c,
  1195  	0x96, 0xc5, 0x9d, 0x02, 0x05, 0x35, 0x61, 0x29, 0x23, 0x3a, 0x45, 0xbf, 0x23, 0xd1, 0xf7, 0x86,
  1196  	0x93, 0xdd, 0xc9, 0xb1, 0xe8, 0xb4, 0x0f, 0x49, 0xa6, 0x23, 0x28, 0xd4, 0x2c, 0xd7, 0xf2, 0x6d,
  1197  	0xcc, 0xf4, 0x09, 0x89, 0xbe, 0x9b, 0x87, 0x5e, 0x89, 0x6c, 0x15, 0x62, 0xe2, 0x8a, 0x0c, 0x98,
  1198  	0x6a, 0x51, 0x46, 0x38, 0xa1, 0x3e, 0xd3, 0x27, 0x25, 0x4e, 0x79, 0x38, 0x95, 0xe7, 0xca, 0x4d,
  1199  	0x41, 0xa6, 0x30, 0x88, 0xc0, 0x3d, 0x16, 0xd6, 0x2c, 0xdb, 0xa6, 0xa1, 0xcf, 0x4d, 0x1e, 0x58,
  1200  	0x0e, 0x36, 0x7d, 0x2a, 0x95, 0x16, 0x24, 0xc3, 0xd7, 0x73, 0x57, 0x39, 0x71, 0x7d, 0x8f, 0xa6,
  1201  	0x8a, 0x97, 0x53, 0xc4, 0xaa, 0x00, 0x94, 0x63, 0x0c, 0xfd, 0x4a, 0x83, 0x1d, 0xfc, 0xbc, 0x45,
  1202  	0x82, 0x6b, 0xb3, 0x1e, 0xf2, 0x30, 0xc0, 0x4c, 0x9d, 0x14, 0x93, 0xf8, 0x75, 0x6a, 0x32, 0x71,
  1203  	0xac, 0xf5, 0x29, 0x49, 0xfa, 0xcd, 0x3c, 0xd2, 0x23, 0x89, 0x71, 0x1c, 0x41, 0x44, 0x87, 0xe4,
  1204  	0xc4, 0xaf, 0x53, 0x79, 0x2d, 0x94, 0x82, 0x0d, 0x9c, 0x63, 0x83, 0x08, 0x2c, 0xb7, 0x70, 0xd0,
  1205  	0xc2, 0x3c, 0xb4, 0xdc, 0xac, 0x04, 0x1d, 0x06, 0xef, 0xfc, 0x79, 0xec, 0x98, 0x82, 0xc6, 0x3b,
  1206  	0xdf, 0xea, 0x1e, 0x42, 0xbf, 0xd4, 0x60, 0xab, 0x8b, 0xab, 0x1e, 0xfa, 0x0e, 0xf1, 0x1b, 0x6a,
  1207  	0xc6, 0xd3, 0x92, 0xf4, 0x8d, 0x1b, 0x90, 0x1e, 0x47, 0xfe, 0xd9, 0x09, 0xaf, 0xb7, 0xfa, 0x9b,
  1208  	0xa0, 0x3f, 0x68, 0xf0, 0xa0, 0xeb, 0x7a, 0x9a, 0x0c, 0x73, 0xee, 0x62, 0x0f, 0xfb, 0xdc, 0x64,
  1209  	0x76, 0x13, 0x3b, 0xa1, 0x8b, 0x1d, 0x7d, 0x46, 0x8a, 0x79, 0xf3, 0x26, 0x57, 0xf6, 0x22, 0xc1,
  1210  	0xc9, 0x2c, 0xc6, 0xae, 0xd3, 0xd7, 0xea, 0x22, 0x26, 0x43, 0x6f, 0x80, 0x4e, 0x98, 0x29, 0xef,
  1211  	0x76, 0xcc, 0x62, 0x62, 0xdf, 0xaa, 0x09, 0x21, 0xb3, 0x3b, 0x5a, 0xa9, 0x60, 0x2c, 0x13, 0x26,
  1212  	0x2e, 0xf2, 0x91, 0x1a, 0x3d, 0x8a, 0x06, 0xd1, 0x11, 0x6c, 0x13, 0x66, 0xa6, 0x14, 0xac, 0xdb,
  1213  	0x7f, 0x4e, 0xfa, 0x6f, 0x10, 0x96, 0xca, 0x65, 0x9d, 0x30, 0x57, 0xb0, 0x21, 0x0e, 0xbc, 0xd8,
  1214  	0x8a, 0x00, 0x3f, 0xb3, 0x02, 0xc7, 0xb4, 0x2d, 0xaf, 0x65, 0x91, 0x86, 0x1f, 0x1d, 0x87, 0x79,
  1215  	0xf9, 0xb0, 0xbe, 0x9e, 0xb7, 0x18, 0xd5, 0xc8, 0xdf, 0x90, 0xee, 0x07, 0xca, 0x5b, 0xac, 0x83,
  1216  	0xb1, 0xca, 0xfb, 0x0d, 0xa1, 0x8f, 0x34, 0xf8, 0x4a, 0x07, 0x71, 0x8b, 0x52, 0x37, 0x65, 0x8f,
  1217  	0xf7, 0x43, 0xbf, 0x3b, 0xf8, 0x92, 0xc7, 0xc8, 0x11, 0xcf, 0x39, 0xa5, 0xae, 0x71, 0xbf, 0x8d,
  1218  	0x5a, 0x74, 0xc5, 0x46, 0xf1, 0xda, 0xa3, 0xdf, 0x6b, 0xf0, 0xa0, 0xdf, 0xdc, 0xe3, 0xc7, 0xa0,
  1219  	0x45, 0x89, 0xcf, 0x99, 0xbe, 0x20, 0x35, 0x7c, 0xf7, 0xc6, 0xab, 0xb0, 0x1f, 0xc1, 0x9c, 0x4b,
  1220  	0x14, 0xa3, 0xc8, 0x07, 0xda, 0x20, 0x1b, 0x96, 0xeb, 0x18, 0x9b, 0x0e, 0x61, 0x91, 0x80, 0x64,
  1221  	0x19, 0x90, 0xdc, 0x88, 0xdc, 0x7b, 0x79, 0x8c, 0xf1, 0xa1, 0xf2, 0x8b, 0x27, 0x69, 0x2c, 0xd6,
  1222  	0xbb, 0x3b, 0xd1, 0x33, 0xd8, 0x6c, 0x23, 0x49, 0x9e, 0x3e, 0x82, 0x03, 0x93, 0x73, 0x57, 0x5f,
  1223  	0x94, 0xf3, 0x7d, 0x7d, 0x48, 0x32, 0x35, 0x83, 0x2a, 0xc1, 0x41, 0xb5, 0x7a, 0x6a, 0xac, 0xd6,
  1224  	0x7b, 0x0f, 0x71, 0x17, 0xfd, 0x5a, 0x83, 0xdd, 0x36, 0xe6, 0x5a, 0x68, 0x8b, 0x7b, 0x78, 0x45,
  1225  	0xdd, 0xd0, 0xc3, 0xb1, 0x0e, 0xa6, 0x2f, 0x49, 0xfe, 0xb7, 0x86, 0xe4, 0xaf, 0x48, 0x90, 0xf7,
  1226  	0x25, 0x86, 0x22, 0x64, 0xc6, 0x76, 0x3d, 0xdf, 0x00, 0x7d, 0x1b, 0xd6, 0x09, 0x33, 0xeb, 0x24,
  1227  	0x60, 0xdc, 0x14, 0x9a, 0xec, 0x6b, 0xdb, 0xc5, 0x66, 0x9d, 0xf8, 0x84, 0x35, 0xb1, 0xa3, 0x2f,
  1228  	0xcb, 0xcb, 0x73, 0x8f, 0xb0, 0x63, 0x61, 0x71, 0x8c, 0xf1, 0x81, 0x18, 0x3f, 0x56, 0xc3, 0xe8,
  1229  	0x13, 0x0d, 0x1e, 0xb5, 0x70, 0xf4, 0x86, 0x0d, 0x77, 0x8e, 0x57, 0x6e, 0x75, 0x8e, 0x4b, 0x8a,
  1230  	0xa4, 0x3a, 0xf0, 0x38, 0xff, 0x45, 0x83, 0x72, 0x1f, 0x45, 0xfd, 0x8e, 0xf5, 0x3d, 0x29, 0xe9,
  1231  	0xe8, 0xd6, 0xc7, 0x3a, 0x62, 0x53, 0xa7, 0xfb, 0x61, 0x2f, 0xa5, 0xbd, 0x0f, 0xf9, 0xb7, 0x60,
  1232  	0x35, 0x52, 0xc6, 0x4c, 0xda, 0xe2, 0x26, 0x0d, 0xb9, 0x69, 0x39, 0x4e, 0x80, 0x19, 0xc3, 0x4c,
  1233  	0xd7, 0x77, 0xc6, 0x4a, 0x53, 0xc6, 0x8a, 0x32, 0x38, 0x6b, 0xf1, 0xb3, 0x90, 0xef, 0xc7, 0xa3,
  1234  	0xa8, 0x06, 0x7a, 0x93, 0x30, 0x4e, 0x03, 0x62, 0x5b, 0xae, 0x8a, 0xd5, 0x01, 0xb6, 0x69, 0xe0,
  1235  	0x30, 0x7d, 0x55, 0x4e, 0xa7, 0x34, 0x68, 0x3a, 0xd8, 0x88, 0xec, 0x8d, 0x95, 0x14, 0x29, 0xdb,
  1236  	0x8f, 0x30, 0xac, 0xd4, 0x88, 0x6f, 0x05, 0xd7, 0x42, 0x9d, 0xc8, 0x10, 0x92, 0x6c, 0x6e, 0x6d,
  1237  	0x70, 0x70, 0xac, 0x48, 0xcf, 0xb3, 0xc8, 0x51, 0x25, 0x74, 0x4b, 0xb5, 0xee, 0x4e, 0x86, 0x9a,
  1238  	0xf0, 0xa4, 0x27, 0x8d, 0x49, 0x1c, 0x96, 0x86, 0x23, 0xb3, 0x4e, 0x83, 0x4c, 0x9c, 0xd2, 0xd7,
  1239  	0xe5, 0xf2, 0xbc, 0xda, 0x03, 0xf1, 0xc4, 0x61, 0x49, 0x5c, 0x39, 0xa6, 0x41, 0x1a, 0x6d, 0x50,
  1240  	0x15, 0x4a, 0x99, 0x2c, 0xb7, 0x03, 0x9f, 0x53, 0x41, 0x61, 0x63, 0xd3, 0x76, 0x29, 0xc3, 0xfa,
  1241  	0x86, 0xc4, 0x2f, 0xa6, 0x99, 0x6d, 0x16, 0xb6, 0x4a, 0x8f, 0x85, 0xe9, 0x81, 0xb0, 0x14, 0x39,
  1242  	0xa9, 0x83, 0x7d, 0xea, 0x99, 0x0e, 0xb6, 0x89, 0x67, 0xb9, 0x4c, 0xdf, 0x1c, 0x9c, 0x93, 0x1e,
  1243  	0x0a, 0x8f, 0x43, 0xe5, 0x10, 0xe7, 0xa4, 0x4e, 0xb6, 0x53, 0xe4, 0x48, 0xf7, 0x6d, 0xea, 0x3b,
  1244  	0x32, 0x3b, 0xb3, 0x5c, 0xb3, 0x57, 0x82, 0xca, 0xf4, 0xad, 0xc1, 0x51, 0xfa, 0x20, 0x05, 0xe9,
  1245  	0x91, 0xac, 0x1a, 0xdb, 0x76, 0xdf, 0x71, 0x49, 0x21, 0xce, 0x41, 0x9c, 0xad, 0x60, 0x6c, 0x7a,
  1246  	0xa1, 0xcb, 0x49, 0xcb, 0x25, 0x38, 0x60, 0xfa, 0xf6, 0xe0, 0x73, 0xa0, 0x72, 0x10, 0x8c, 0xdf,
  1247  	0x4d, 0xfc, 0x8c, 0x25, 0xaf, 0xbb, 0x93, 0xa1, 0x9f, 0xc2, 0x62, 0x32, 0x2f, 0x93, 0xe1, 0x9f,
  1248  	0x85, 0x58, 0xa6, 0x9e, 0x3b, 0x92, 0xe3, 0x51, 0x1e, 0x47, 0xa2, 0xf5, 0x42, 0x79, 0x19, 0x88,
  1249  	0x76, 0x76, 0x31, 0xf4, 0x21, 0xa0, 0x4c, 0x7a, 0x1b, 0x3d, 0xb5, 0x4c, 0xbf, 0x3f, 0xf8, 0x89,
  1250  	0xdd, 0x6f, 0x34, 0x02, 0xdc, 0xb0, 0x38, 0x4e, 0x53, 0xdc, 0xe8, 0x0d, 0x8d, 0x2e, 0x8a, 0xb1,
  1251  	0xc0, 0x3a, 0xfa, 0x19, 0x3a, 0x83, 0x39, 0xb5, 0x64, 0x31, 0x4f, 0x71, 0xf0, 0xa5, 0x8c, 0x96,
  1252  	0x4a, 0x41, 0xcf, 0x7a, 0x99, 0x16, 0x43, 0x75, 0x58, 0x6a, 0x04, 0x96, 0x88, 0x51, 0x21, 0x6f,
  1253  	0xd2, 0x80, 0xfc, 0xdc, 0x8a, 0x52, 0xff, 0x5d, 0x09, 0xfb, 0x34, 0x37, 0x42, 0x84, 0xae, 0xfb,
  1254  	0x8e, 0xf0, 0xdd, 0x6f, 0x73, 0x35, 0x16, 0x1b, 0xdd, 0x9d, 0xe8, 0x1c, 0x66, 0x2d, 0x89, 0x63,
  1255  	0xca, 0x51, 0xa6, 0xbf, 0x32, 0x38, 0xf3, 0x17, 0x04, 0xfb, 0x72, 0x4c, 0xd2, 0x18, 0x33, 0x56,
  1256  	0xda, 0x60, 0xc5, 0x53, 0x58, 0xe8, 0xda, 0x1f, 0xb4, 0x06, 0x85, 0x78, 0x87, 0xe5, 0x37, 0xeb,
  1257  	0xb8, 0x91, 0xb4, 0xd1, 0x3a, 0x4c, 0x25, 0x17, 0x54, 0x1f, 0xdd, 0xd1, 0x4a, 0x53, 0x46, 0xc1,
  1258  	0x53, 0x57, 0xb0, 0xf8, 0x91, 0x06, 0xab, 0x7d, 0x43, 0x2e, 0xd2, 0x61, 0x52, 0x6d, 0x84, 0x44,
  1259  	0x9d, 0x32, 0xe2, 0x26, 0x3a, 0x81, 0x42, 0x12, 0xd5, 0x47, 0x65, 0x0a, 0x51, 0x1e, 0x32, 0xaa,
  1260  	0xc6, 0xe1, 0x7c, 0x92, 0x47, 0xc1, 0xbb, 0xf8, 0x57, 0x0d, 0xb6, 0x07, 0x44, 0x5d, 0xf4, 0x0d,
  1261  	0x58, 0x51, 0x21, 0x9d, 0x71, 0x2b, 0x10, 0x19, 0x85, 0x87, 0x19, 0xb7, 0xbc, 0x96, 0xd4, 0x35,
  1262  	0x66, 0x2c, 0x45, 0xa3, 0x17, 0x62, 0xb0, 0x1a, 0x8f, 0xa1, 0x73, 0x98, 0x6b, 0x3f, 0x9e, 0xea,
  1263  	0x3b, 0x3c, 0xf7, 0x25, 0xd9, 0x6f, 0x3b, 0x91, 0xb3, 0x6d, 0x07, 0xb1, 0x58, 0x87, 0xd9, 0xb6,
  1264  	0xf1, 0x9c, 0x15, 0x7a, 0x0b, 0x26, 0x12, 0x52, 0xad, 0x34, 0x55, 0xd9, 0x15, 0x6f, 0xd2, 0xbf,
  1265  	0xbf, 0xd8, 0x5e, 0xb7, 0x29, 0xf3, 0x28, 0x63, 0xce, 0x65, 0x99, 0xd0, 0x3d, 0xcf, 0xe2, 0xcd,
  1266  	0xf2, 0x29, 0x6e, 0x58, 0xf6, 0xf5, 0x21, 0xb6, 0x0d, 0xe5, 0x52, 0xfc, 0x05, 0x14, 0x87, 0x88,
  1267  	0x77, 0xb9, 0xe4, 0x2a, 0x16, 0xdf, 0x84, 0x3c, 0x72, 0x29, 0xfe, 0x53, 0x83, 0x87, 0x43, 0xc7,
  1268  	0x67, 0xf4, 0x1d, 0x58, 0xcf, 0x26, 0x28, 0xbd, 0xf7, 0x47, 0x0f, 0x92, 0x04, 0xa3, 0x63, 0x8f,
  1269  	0x70, 0xba, 0x47, 0x89, 0xe2, 0x2f, 0x23, 0x29, 0x8e, 0x37, 0x2e, 0x6a, 0x16, 0xff, 0xa8, 0xc1,
  1270  	0x6c, 0x5b, 0xdd, 0xa2, 0xfd, 0x5a, 0x68, 0xed, 0xd7, 0x02, 0x6d, 0xc0, 0x14, 0x61, 0x95, 0xf0,
  1271  	0xfa, 0x82, 0x38, 0xd1, 0xfe, 0x15, 0x8c, 0xb4, 0x03, 0x55, 0x60, 0x42, 0xbe, 0x87, 0x71, 0x19,
  1272  	0xe6, 0x6b, 0x83, 0xaa, 0x25, 0xa7, 0xc4, 0x23, 0x11, 0xb5, 0xa1, 0x3c, 0xdf, 0x2c, 0x7c, 0xfc,
  1273  	0xe9, 0xf6, 0xc8, 0x7f, 0x3f, 0xdd, 0x1e, 0x29, 0xfe, 0x59, 0x83, 0xc5, 0x1e, 0x71, 0xe4, 0xff,
  1274  	0x11, 0xf8, 0xfd, 0x0e, 0x81, 0xaf, 0x0d, 0xf7, 0xd1, 0x99, 0x2b, 0xf3, 0x1f, 0x63, 0xb0, 0x95,
  1275  	0x1f, 0xf9, 0xf2, 0x15, 0x7f, 0x00, 0x77, 0x5d, 0x81, 0x6f, 0xd6, 0xc2, 0x6b, 0x53, 0xa9, 0x1b,
  1276  	0xbd, 0xa5, 0xba, 0x39, 0x89, 0x54, 0x09, 0xaf, 0x65, 0x93, 0xa1, 0x9f, 0xc0, 0x82, 0x22, 0xce,
  1277  	0x80, 0x47, 0x53, 0x7f, 0x7c, 0x93, 0xef, 0xed, 0x08, 0x7d, 0x3e, 0xc2, 0x4a, 0xe1, 0x7f, 0x0c,
  1278  	0x0b, 0x91, 0x74, 0x86, 0x5d, 0x37, 0x86, 0x1f, 0xbf, 0xa5, 0xf6, 0x79, 0x09, 0x75, 0x81, 0x5d,
  1279  	0x57, 0xa1, 0x9b, 0x80, 0x92, 0xb2, 0x41, 0x0a, 0x7f, 0xe7, 0xb6, 0xea, 0xef, 0x7a, 0xaa, 0x28,
  1280  	0x10, 0x13, 0x64, 0xf6, 0xf0, 0x13, 0x0d, 0x26, 0x55, 0x05, 0x0c, 0xed, 0xc2, 0x6c, 0x26, 0x7c,
  1281  	0x27, 0x1b, 0x36, 0x93, 0x76, 0x9e, 0x38, 0x68, 0x09, 0xee, 0xc8, 0x24, 0x4a, 0xc5, 0x8d, 0xa8,
  1282  	0x81, 0xbe, 0x07, 0x05, 0x07, 0xcb, 0x3a, 0x97, 0x58, 0x65, 0x6d, 0x50, 0xcd, 0xed, 0x30, 0xb2,
  1283  	0x35, 0x12, 0xa7, 0x8c, 0xa2, 0x3f, 0x69, 0x80, 0xba, 0x6b, 0x69, 0xc3, 0x89, 0xcb, 0x0b, 0x6c,
  1284  	0xe8, 0x6d, 0x28, 0xc4, 0x95, 0x38, 0xa5, 0xf1, 0x95, 0xdc, 0x32, 0x90, 0xb2, 0x35, 0x12, 0xaf,
  1285  	0x8c, 0xc8, 0xbf, 0x6b, 0x30, 0xdf, 0x51, 0x8e, 0x1b, 0x4e, 0xa1, 0x0b, 0x2b, 0xbd, 0x2b, 0x80,
  1286  	0x2a, 0x66, 0xbe, 0x36, 0x5c, 0x01, 0x30, 0xad, 0xf4, 0xa9, 0xcc, 0x76, 0xa9, 0x57, 0x15, 0x30,
  1287  	0x23, 0xf8, 0x77, 0x1a, 0x6c, 0xe4, 0x95, 0xf2, 0xf2, 0x6f, 0x6a, 0x15, 0xa6, 0xb3, 0x95, 0xbb,
  1288  	0x48, 0xea, 0xd3, 0x5b, 0x94, 0x0d, 0x0d, 0xf0, 0x92, 0xdf, 0xc5, 0x8f, 0x35, 0x58, 0xcf, 0x29,
  1289  	0xb6, 0xe5, 0x4b, 0x3a, 0x85, 0x49, 0x55, 0xd9, 0x53, 0x72, 0x9e, 0xdc, 0xbc, 0xa6, 0x67, 0xc4,
  1290  	0x10, 0xc5, 0xdf, 0x8c, 0xc2, 0xbd, 0x3e, 0x59, 0x9c, 0x88, 0xa9, 0x32, 0x53, 0xc3, 0x41, 0x1c,
  1291  	0x53, 0x55, 0x13, 0xfd, 0x10, 0x10, 0xa7, 0xdc, 0x72, 0x4d, 0x95, 0x38, 0x7a, 0x32, 0xf0, 0x46,
  1292  	0xf1, 0x75, 0x53, 0xc5, 0xd7, 0xe5, 0xee, 0xf8, 0x7a, 0xe2, 0x73, 0xe3, 0xae, 0x74, 0x8c, 0xe8,
  1293  	0xa4, 0x1b, 0xda, 0x87, 0x4d, 0xd7, 0x62, 0xdc, 0x74, 0xb0, 0x2b, 0x52, 0x61, 0xf9, 0x99, 0x66,
  1294  	0x37, 0xb1, 0x7d, 0x29, 0xbe, 0x9c, 0x88, 0x87, 0xe5, 0x99, 0x1d, 0x33, 0xd6, 0x84, 0xd1, 0x61,
  1295  	0x6a, 0x73, 0x10, 0x99, 0x88, 0xf0, 0x89, 0x8e, 0x61, 0x42, 0xe5, 0x94, 0xe3, 0x83, 0x4b, 0x00,
  1296  	0xdd, 0x53, 0x35, 0x94, 0x77, 0xf1, 0x19, 0xcc, 0x77, 0x64, 0x9c, 0xe9, 0x22, 0xe0, 0xf6, 0x45,
  1297  	0xc0, 0xe8, 0x07, 0x30, 0x93, 0xcd, 0x67, 0xd5, 0x6e, 0x7c, 0x35, 0x3f, 0xa1, 0x4a, 0x53, 0xd9,
  1298  	0xe9, 0x4c, 0x2a, 0x5b, 0x69, 0x7e, 0xf6, 0x62, 0x4b, 0xfb, 0xfc, 0xc5, 0x96, 0xf6, 0x9f, 0x17,
  1299  	0x5b, 0xda, 0x6f, 0x5f, 0x6e, 0x8d, 0x7c, 0xfe, 0x72, 0x6b, 0xe4, 0x5f, 0x2f, 0xb7, 0x46, 0x3e,
  1300  	0x78, 0xaf, 0x41, 0x78, 0x33, 0xac, 0x95, 0x6d, 0xea, 0xed, 0x9d, 0xc4, 0xc8, 0xa7, 0x56, 0x8d,
  1301  	0xed, 0x25, 0x3c, 0x8f, 0x6c, 0x1a, 0xe0, 0x6c, 0xb3, 0x69, 0x11, 0x7f, 0xcf, 0xa3, 0xe2, 0x7b,
  1302  	0x92, 0xa5, 0x7f, 0x01, 0xf1, 0xeb, 0x16, 0x66, 0xb5, 0x09, 0xf9, 0x47, 0xcf, 0xd3, 0xff, 0x05,
  1303  	0x00, 0x00, 0xff, 0xff, 0xc7, 0x69, 0x9a, 0x25, 0x96, 0x1a, 0x00, 0x00,
  1304  }
  1305  
  1306  func (m *GenesisState) Marshal() (dAtA []byte, err error) {
  1307  	size := m.Size()
  1308  	dAtA = make([]byte, size)
  1309  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1310  	if err != nil {
  1311  		return nil, err
  1312  	}
  1313  	return dAtA[:n], nil
  1314  }
  1315  
  1316  func (m *GenesisState) MarshalTo(dAtA []byte) (int, error) {
  1317  	size := m.Size()
  1318  	return m.MarshalToSizedBuffer(dAtA[:size])
  1319  }
  1320  
  1321  func (m *GenesisState) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1322  	i := len(dAtA)
  1323  	_ = i
  1324  	var l int
  1325  	_ = l
  1326  	if len(m.ActiveGrants) > 0 {
  1327  		for iNdEx := len(m.ActiveGrants) - 1; iNdEx >= 0; iNdEx-- {
  1328  			{
  1329  				size, err := m.ActiveGrants[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1330  				if err != nil {
  1331  					return 0, err
  1332  				}
  1333  				i -= size
  1334  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1335  			}
  1336  			i--
  1337  			dAtA[i] = 0x2
  1338  			i--
  1339  			dAtA[i] = 0xa2
  1340  		}
  1341  	}
  1342  	if len(m.GrantAuthorizations) > 0 {
  1343  		for iNdEx := len(m.GrantAuthorizations) - 1; iNdEx >= 0; iNdEx-- {
  1344  			{
  1345  				size, err := m.GrantAuthorizations[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1346  				if err != nil {
  1347  					return 0, err
  1348  				}
  1349  				i -= size
  1350  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1351  			}
  1352  			i--
  1353  			dAtA[i] = 0x2
  1354  			i--
  1355  			dAtA[i] = 0x9a
  1356  		}
  1357  	}
  1358  	if len(m.MarketVolumes) > 0 {
  1359  		for iNdEx := len(m.MarketVolumes) - 1; iNdEx >= 0; iNdEx-- {
  1360  			{
  1361  				size, err := m.MarketVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1362  				if err != nil {
  1363  					return 0, err
  1364  				}
  1365  				i -= size
  1366  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1367  			}
  1368  			i--
  1369  			dAtA[i] = 0x2
  1370  			i--
  1371  			dAtA[i] = 0x92
  1372  		}
  1373  	}
  1374  	if len(m.SubaccountVolumes) > 0 {
  1375  		for iNdEx := len(m.SubaccountVolumes) - 1; iNdEx >= 0; iNdEx-- {
  1376  			{
  1377  				size, err := m.SubaccountVolumes[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1378  				if err != nil {
  1379  					return 0, err
  1380  				}
  1381  				i -= size
  1382  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1383  			}
  1384  			i--
  1385  			dAtA[i] = 0x2
  1386  			i--
  1387  			dAtA[i] = 0x8a
  1388  		}
  1389  	}
  1390  	if len(m.OrderbookSequences) > 0 {
  1391  		for iNdEx := len(m.OrderbookSequences) - 1; iNdEx >= 0; iNdEx-- {
  1392  			{
  1393  				size, err := m.OrderbookSequences[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1394  				if err != nil {
  1395  					return 0, err
  1396  				}
  1397  				i -= size
  1398  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1399  			}
  1400  			i--
  1401  			dAtA[i] = 0x2
  1402  			i--
  1403  			dAtA[i] = 0x82
  1404  		}
  1405  	}
  1406  	if len(m.MarketFeeMultipliers) > 0 {
  1407  		for iNdEx := len(m.MarketFeeMultipliers) - 1; iNdEx >= 0; iNdEx-- {
  1408  			{
  1409  				size, err := m.MarketFeeMultipliers[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1410  				if err != nil {
  1411  					return 0, err
  1412  				}
  1413  				i -= size
  1414  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1415  			}
  1416  			i--
  1417  			dAtA[i] = 0x1
  1418  			i--
  1419  			dAtA[i] = 0xfa
  1420  		}
  1421  	}
  1422  	if len(m.ConditionalDerivativeOrderbooks) > 0 {
  1423  		for iNdEx := len(m.ConditionalDerivativeOrderbooks) - 1; iNdEx >= 0; iNdEx-- {
  1424  			{
  1425  				size, err := m.ConditionalDerivativeOrderbooks[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1426  				if err != nil {
  1427  					return 0, err
  1428  				}
  1429  				i -= size
  1430  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1431  			}
  1432  			i--
  1433  			dAtA[i] = 0x1
  1434  			i--
  1435  			dAtA[i] = 0xf2
  1436  		}
  1437  	}
  1438  	if len(m.DenomDecimals) > 0 {
  1439  		for iNdEx := len(m.DenomDecimals) - 1; iNdEx >= 0; iNdEx-- {
  1440  			{
  1441  				size, err := m.DenomDecimals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1442  				if err != nil {
  1443  					return 0, err
  1444  				}
  1445  				i -= size
  1446  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1447  			}
  1448  			i--
  1449  			dAtA[i] = 0x1
  1450  			i--
  1451  			dAtA[i] = 0xea
  1452  		}
  1453  	}
  1454  	if len(m.SpotMarketIdsScheduledToForceClose) > 0 {
  1455  		for iNdEx := len(m.SpotMarketIdsScheduledToForceClose) - 1; iNdEx >= 0; iNdEx-- {
  1456  			i -= len(m.SpotMarketIdsScheduledToForceClose[iNdEx])
  1457  			copy(dAtA[i:], m.SpotMarketIdsScheduledToForceClose[iNdEx])
  1458  			i = encodeVarintGenesis(dAtA, i, uint64(len(m.SpotMarketIdsScheduledToForceClose[iNdEx])))
  1459  			i--
  1460  			dAtA[i] = 0x1
  1461  			i--
  1462  			dAtA[i] = 0xe2
  1463  		}
  1464  	}
  1465  	if len(m.BinaryOptionsMarketIdsScheduledForSettlement) > 0 {
  1466  		for iNdEx := len(m.BinaryOptionsMarketIdsScheduledForSettlement) - 1; iNdEx >= 0; iNdEx-- {
  1467  			i -= len(m.BinaryOptionsMarketIdsScheduledForSettlement[iNdEx])
  1468  			copy(dAtA[i:], m.BinaryOptionsMarketIdsScheduledForSettlement[iNdEx])
  1469  			i = encodeVarintGenesis(dAtA, i, uint64(len(m.BinaryOptionsMarketIdsScheduledForSettlement[iNdEx])))
  1470  			i--
  1471  			dAtA[i] = 0x1
  1472  			i--
  1473  			dAtA[i] = 0xda
  1474  		}
  1475  	}
  1476  	if len(m.BinaryOptionsMarkets) > 0 {
  1477  		for iNdEx := len(m.BinaryOptionsMarkets) - 1; iNdEx >= 0; iNdEx-- {
  1478  			{
  1479  				size, err := m.BinaryOptionsMarkets[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1480  				if err != nil {
  1481  					return 0, err
  1482  				}
  1483  				i -= size
  1484  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1485  			}
  1486  			i--
  1487  			dAtA[i] = 0x1
  1488  			i--
  1489  			dAtA[i] = 0xd2
  1490  		}
  1491  	}
  1492  	if len(m.HistoricalTradeRecords) > 0 {
  1493  		for iNdEx := len(m.HistoricalTradeRecords) - 1; iNdEx >= 0; iNdEx-- {
  1494  			{
  1495  				size, err := m.HistoricalTradeRecords[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1496  				if err != nil {
  1497  					return 0, err
  1498  				}
  1499  				i -= size
  1500  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1501  			}
  1502  			i--
  1503  			dAtA[i] = 0x1
  1504  			i--
  1505  			dAtA[i] = 0xca
  1506  		}
  1507  	}
  1508  	if len(m.RewardsOptOutAddresses) > 0 {
  1509  		for iNdEx := len(m.RewardsOptOutAddresses) - 1; iNdEx >= 0; iNdEx-- {
  1510  			i -= len(m.RewardsOptOutAddresses[iNdEx])
  1511  			copy(dAtA[i:], m.RewardsOptOutAddresses[iNdEx])
  1512  			i = encodeVarintGenesis(dAtA, i, uint64(len(m.RewardsOptOutAddresses[iNdEx])))
  1513  			i--
  1514  			dAtA[i] = 0x1
  1515  			i--
  1516  			dAtA[i] = 0xc2
  1517  		}
  1518  	}
  1519  	if len(m.PendingTradingRewardCampaignAccountPoints) > 0 {
  1520  		for iNdEx := len(m.PendingTradingRewardCampaignAccountPoints) - 1; iNdEx >= 0; iNdEx-- {
  1521  			{
  1522  				size, err := m.PendingTradingRewardCampaignAccountPoints[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1523  				if err != nil {
  1524  					return 0, err
  1525  				}
  1526  				i -= size
  1527  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1528  			}
  1529  			i--
  1530  			dAtA[i] = 0x1
  1531  			i--
  1532  			dAtA[i] = 0xba
  1533  		}
  1534  	}
  1535  	if len(m.PendingTradingRewardPoolCampaignSchedule) > 0 {
  1536  		for iNdEx := len(m.PendingTradingRewardPoolCampaignSchedule) - 1; iNdEx >= 0; iNdEx-- {
  1537  			{
  1538  				size, err := m.PendingTradingRewardPoolCampaignSchedule[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1539  				if err != nil {
  1540  					return 0, err
  1541  				}
  1542  				i -= size
  1543  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1544  			}
  1545  			i--
  1546  			dAtA[i] = 0x1
  1547  			i--
  1548  			dAtA[i] = 0xb2
  1549  		}
  1550  	}
  1551  	if m.IsFirstFeeCycleFinished {
  1552  		i--
  1553  		if m.IsFirstFeeCycleFinished {
  1554  			dAtA[i] = 1
  1555  		} else {
  1556  			dAtA[i] = 0
  1557  		}
  1558  		i--
  1559  		dAtA[i] = 0x1
  1560  		i--
  1561  		dAtA[i] = 0xa8
  1562  	}
  1563  	if len(m.FeeDiscountBucketVolumeAccounts) > 0 {
  1564  		for iNdEx := len(m.FeeDiscountBucketVolumeAccounts) - 1; iNdEx >= 0; iNdEx-- {
  1565  			{
  1566  				size, err := m.FeeDiscountBucketVolumeAccounts[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1567  				if err != nil {
  1568  					return 0, err
  1569  				}
  1570  				i -= size
  1571  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1572  			}
  1573  			i--
  1574  			dAtA[i] = 0x1
  1575  			i--
  1576  			dAtA[i] = 0xa2
  1577  		}
  1578  	}
  1579  	if len(m.FeeDiscountAccountTierTtl) > 0 {
  1580  		for iNdEx := len(m.FeeDiscountAccountTierTtl) - 1; iNdEx >= 0; iNdEx-- {
  1581  			{
  1582  				size, err := m.FeeDiscountAccountTierTtl[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1583  				if err != nil {
  1584  					return 0, err
  1585  				}
  1586  				i -= size
  1587  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1588  			}
  1589  			i--
  1590  			dAtA[i] = 0x1
  1591  			i--
  1592  			dAtA[i] = 0x9a
  1593  		}
  1594  	}
  1595  	if m.FeeDiscountSchedule != nil {
  1596  		{
  1597  			size, err := m.FeeDiscountSchedule.MarshalToSizedBuffer(dAtA[:i])
  1598  			if err != nil {
  1599  				return 0, err
  1600  			}
  1601  			i -= size
  1602  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  1603  		}
  1604  		i--
  1605  		dAtA[i] = 0x1
  1606  		i--
  1607  		dAtA[i] = 0x92
  1608  	}
  1609  	if len(m.TradingRewardCampaignAccountPoints) > 0 {
  1610  		for iNdEx := len(m.TradingRewardCampaignAccountPoints) - 1; iNdEx >= 0; iNdEx-- {
  1611  			{
  1612  				size, err := m.TradingRewardCampaignAccountPoints[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1613  				if err != nil {
  1614  					return 0, err
  1615  				}
  1616  				i -= size
  1617  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1618  			}
  1619  			i--
  1620  			dAtA[i] = 0x1
  1621  			i--
  1622  			dAtA[i] = 0x8a
  1623  		}
  1624  	}
  1625  	if len(m.TradingRewardPoolCampaignSchedule) > 0 {
  1626  		for iNdEx := len(m.TradingRewardPoolCampaignSchedule) - 1; iNdEx >= 0; iNdEx-- {
  1627  			{
  1628  				size, err := m.TradingRewardPoolCampaignSchedule[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1629  				if err != nil {
  1630  					return 0, err
  1631  				}
  1632  				i -= size
  1633  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1634  			}
  1635  			i--
  1636  			dAtA[i] = 0x1
  1637  			i--
  1638  			dAtA[i] = 0x82
  1639  		}
  1640  	}
  1641  	if m.TradingRewardCampaignInfo != nil {
  1642  		{
  1643  			size, err := m.TradingRewardCampaignInfo.MarshalToSizedBuffer(dAtA[:i])
  1644  			if err != nil {
  1645  				return 0, err
  1646  			}
  1647  			i -= size
  1648  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  1649  		}
  1650  		i--
  1651  		dAtA[i] = 0x7a
  1652  	}
  1653  	if m.IsDerivativesExchangeEnabled {
  1654  		i--
  1655  		if m.IsDerivativesExchangeEnabled {
  1656  			dAtA[i] = 1
  1657  		} else {
  1658  			dAtA[i] = 0
  1659  		}
  1660  		i--
  1661  		dAtA[i] = 0x70
  1662  	}
  1663  	if m.IsSpotExchangeEnabled {
  1664  		i--
  1665  		if m.IsSpotExchangeEnabled {
  1666  			dAtA[i] = 1
  1667  		} else {
  1668  			dAtA[i] = 0
  1669  		}
  1670  		i--
  1671  		dAtA[i] = 0x68
  1672  	}
  1673  	if len(m.DerivativeMarketSettlementScheduled) > 0 {
  1674  		for iNdEx := len(m.DerivativeMarketSettlementScheduled) - 1; iNdEx >= 0; iNdEx-- {
  1675  			{
  1676  				size, err := m.DerivativeMarketSettlementScheduled[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1677  				if err != nil {
  1678  					return 0, err
  1679  				}
  1680  				i -= size
  1681  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1682  			}
  1683  			i--
  1684  			dAtA[i] = 0x62
  1685  		}
  1686  	}
  1687  	if len(m.PerpetualMarketFundingState) > 0 {
  1688  		for iNdEx := len(m.PerpetualMarketFundingState) - 1; iNdEx >= 0; iNdEx-- {
  1689  			{
  1690  				size, err := m.PerpetualMarketFundingState[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1691  				if err != nil {
  1692  					return 0, err
  1693  				}
  1694  				i -= size
  1695  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1696  			}
  1697  			i--
  1698  			dAtA[i] = 0x5a
  1699  		}
  1700  	}
  1701  	if len(m.PerpetualMarketInfo) > 0 {
  1702  		for iNdEx := len(m.PerpetualMarketInfo) - 1; iNdEx >= 0; iNdEx-- {
  1703  			{
  1704  				size, err := m.PerpetualMarketInfo[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1705  				if err != nil {
  1706  					return 0, err
  1707  				}
  1708  				i -= size
  1709  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1710  			}
  1711  			i--
  1712  			dAtA[i] = 0x52
  1713  		}
  1714  	}
  1715  	if len(m.ExpiryFuturesMarketInfoState) > 0 {
  1716  		for iNdEx := len(m.ExpiryFuturesMarketInfoState) - 1; iNdEx >= 0; iNdEx-- {
  1717  			{
  1718  				size, err := m.ExpiryFuturesMarketInfoState[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1719  				if err != nil {
  1720  					return 0, err
  1721  				}
  1722  				i -= size
  1723  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1724  			}
  1725  			i--
  1726  			dAtA[i] = 0x4a
  1727  		}
  1728  	}
  1729  	if len(m.SubaccountTradeNonces) > 0 {
  1730  		for iNdEx := len(m.SubaccountTradeNonces) - 1; iNdEx >= 0; iNdEx-- {
  1731  			{
  1732  				size, err := m.SubaccountTradeNonces[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1733  				if err != nil {
  1734  					return 0, err
  1735  				}
  1736  				i -= size
  1737  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1738  			}
  1739  			i--
  1740  			dAtA[i] = 0x42
  1741  		}
  1742  	}
  1743  	if len(m.Positions) > 0 {
  1744  		for iNdEx := len(m.Positions) - 1; iNdEx >= 0; iNdEx-- {
  1745  			{
  1746  				size, err := m.Positions[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1747  				if err != nil {
  1748  					return 0, err
  1749  				}
  1750  				i -= size
  1751  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1752  			}
  1753  			i--
  1754  			dAtA[i] = 0x3a
  1755  		}
  1756  	}
  1757  	if len(m.Balances) > 0 {
  1758  		for iNdEx := len(m.Balances) - 1; iNdEx >= 0; iNdEx-- {
  1759  			{
  1760  				size, err := m.Balances[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1761  				if err != nil {
  1762  					return 0, err
  1763  				}
  1764  				i -= size
  1765  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1766  			}
  1767  			i--
  1768  			dAtA[i] = 0x32
  1769  		}
  1770  	}
  1771  	if len(m.DerivativeOrderbook) > 0 {
  1772  		for iNdEx := len(m.DerivativeOrderbook) - 1; iNdEx >= 0; iNdEx-- {
  1773  			{
  1774  				size, err := m.DerivativeOrderbook[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1775  				if err != nil {
  1776  					return 0, err
  1777  				}
  1778  				i -= size
  1779  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1780  			}
  1781  			i--
  1782  			dAtA[i] = 0x2a
  1783  		}
  1784  	}
  1785  	if len(m.SpotOrderbook) > 0 {
  1786  		for iNdEx := len(m.SpotOrderbook) - 1; iNdEx >= 0; iNdEx-- {
  1787  			{
  1788  				size, err := m.SpotOrderbook[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1789  				if err != nil {
  1790  					return 0, err
  1791  				}
  1792  				i -= size
  1793  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1794  			}
  1795  			i--
  1796  			dAtA[i] = 0x22
  1797  		}
  1798  	}
  1799  	if len(m.DerivativeMarkets) > 0 {
  1800  		for iNdEx := len(m.DerivativeMarkets) - 1; iNdEx >= 0; iNdEx-- {
  1801  			{
  1802  				size, err := m.DerivativeMarkets[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1803  				if err != nil {
  1804  					return 0, err
  1805  				}
  1806  				i -= size
  1807  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1808  			}
  1809  			i--
  1810  			dAtA[i] = 0x1a
  1811  		}
  1812  	}
  1813  	if len(m.SpotMarkets) > 0 {
  1814  		for iNdEx := len(m.SpotMarkets) - 1; iNdEx >= 0; iNdEx-- {
  1815  			{
  1816  				size, err := m.SpotMarkets[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1817  				if err != nil {
  1818  					return 0, err
  1819  				}
  1820  				i -= size
  1821  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1822  			}
  1823  			i--
  1824  			dAtA[i] = 0x12
  1825  		}
  1826  	}
  1827  	{
  1828  		size, err := m.Params.MarshalToSizedBuffer(dAtA[:i])
  1829  		if err != nil {
  1830  			return 0, err
  1831  		}
  1832  		i -= size
  1833  		i = encodeVarintGenesis(dAtA, i, uint64(size))
  1834  	}
  1835  	i--
  1836  	dAtA[i] = 0xa
  1837  	return len(dAtA) - i, nil
  1838  }
  1839  
  1840  func (m *OrderbookSequence) Marshal() (dAtA []byte, err error) {
  1841  	size := m.Size()
  1842  	dAtA = make([]byte, size)
  1843  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1844  	if err != nil {
  1845  		return nil, err
  1846  	}
  1847  	return dAtA[:n], nil
  1848  }
  1849  
  1850  func (m *OrderbookSequence) MarshalTo(dAtA []byte) (int, error) {
  1851  	size := m.Size()
  1852  	return m.MarshalToSizedBuffer(dAtA[:size])
  1853  }
  1854  
  1855  func (m *OrderbookSequence) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1856  	i := len(dAtA)
  1857  	_ = i
  1858  	var l int
  1859  	_ = l
  1860  	if len(m.MarketId) > 0 {
  1861  		i -= len(m.MarketId)
  1862  		copy(dAtA[i:], m.MarketId)
  1863  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.MarketId)))
  1864  		i--
  1865  		dAtA[i] = 0x12
  1866  	}
  1867  	if m.Sequence != 0 {
  1868  		i = encodeVarintGenesis(dAtA, i, uint64(m.Sequence))
  1869  		i--
  1870  		dAtA[i] = 0x8
  1871  	}
  1872  	return len(dAtA) - i, nil
  1873  }
  1874  
  1875  func (m *FeeDiscountAccountTierTTL) Marshal() (dAtA []byte, err error) {
  1876  	size := m.Size()
  1877  	dAtA = make([]byte, size)
  1878  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1879  	if err != nil {
  1880  		return nil, err
  1881  	}
  1882  	return dAtA[:n], nil
  1883  }
  1884  
  1885  func (m *FeeDiscountAccountTierTTL) MarshalTo(dAtA []byte) (int, error) {
  1886  	size := m.Size()
  1887  	return m.MarshalToSizedBuffer(dAtA[:size])
  1888  }
  1889  
  1890  func (m *FeeDiscountAccountTierTTL) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1891  	i := len(dAtA)
  1892  	_ = i
  1893  	var l int
  1894  	_ = l
  1895  	if m.TierTtl != nil {
  1896  		{
  1897  			size, err := m.TierTtl.MarshalToSizedBuffer(dAtA[:i])
  1898  			if err != nil {
  1899  				return 0, err
  1900  			}
  1901  			i -= size
  1902  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  1903  		}
  1904  		i--
  1905  		dAtA[i] = 0x12
  1906  	}
  1907  	if len(m.Account) > 0 {
  1908  		i -= len(m.Account)
  1909  		copy(dAtA[i:], m.Account)
  1910  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.Account)))
  1911  		i--
  1912  		dAtA[i] = 0xa
  1913  	}
  1914  	return len(dAtA) - i, nil
  1915  }
  1916  
  1917  func (m *FeeDiscountBucketVolumeAccounts) Marshal() (dAtA []byte, err error) {
  1918  	size := m.Size()
  1919  	dAtA = make([]byte, size)
  1920  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1921  	if err != nil {
  1922  		return nil, err
  1923  	}
  1924  	return dAtA[:n], nil
  1925  }
  1926  
  1927  func (m *FeeDiscountBucketVolumeAccounts) MarshalTo(dAtA []byte) (int, error) {
  1928  	size := m.Size()
  1929  	return m.MarshalToSizedBuffer(dAtA[:size])
  1930  }
  1931  
  1932  func (m *FeeDiscountBucketVolumeAccounts) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1933  	i := len(dAtA)
  1934  	_ = i
  1935  	var l int
  1936  	_ = l
  1937  	if len(m.AccountVolume) > 0 {
  1938  		for iNdEx := len(m.AccountVolume) - 1; iNdEx >= 0; iNdEx-- {
  1939  			{
  1940  				size, err := m.AccountVolume[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1941  				if err != nil {
  1942  					return 0, err
  1943  				}
  1944  				i -= size
  1945  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  1946  			}
  1947  			i--
  1948  			dAtA[i] = 0x12
  1949  		}
  1950  	}
  1951  	if m.BucketStartTimestamp != 0 {
  1952  		i = encodeVarintGenesis(dAtA, i, uint64(m.BucketStartTimestamp))
  1953  		i--
  1954  		dAtA[i] = 0x8
  1955  	}
  1956  	return len(dAtA) - i, nil
  1957  }
  1958  
  1959  func (m *AccountVolume) Marshal() (dAtA []byte, err error) {
  1960  	size := m.Size()
  1961  	dAtA = make([]byte, size)
  1962  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1963  	if err != nil {
  1964  		return nil, err
  1965  	}
  1966  	return dAtA[:n], nil
  1967  }
  1968  
  1969  func (m *AccountVolume) MarshalTo(dAtA []byte) (int, error) {
  1970  	size := m.Size()
  1971  	return m.MarshalToSizedBuffer(dAtA[:size])
  1972  }
  1973  
  1974  func (m *AccountVolume) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1975  	i := len(dAtA)
  1976  	_ = i
  1977  	var l int
  1978  	_ = l
  1979  	{
  1980  		size := m.Volume.Size()
  1981  		i -= size
  1982  		if _, err := m.Volume.MarshalTo(dAtA[i:]); err != nil {
  1983  			return 0, err
  1984  		}
  1985  		i = encodeVarintGenesis(dAtA, i, uint64(size))
  1986  	}
  1987  	i--
  1988  	dAtA[i] = 0x12
  1989  	if len(m.Account) > 0 {
  1990  		i -= len(m.Account)
  1991  		copy(dAtA[i:], m.Account)
  1992  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.Account)))
  1993  		i--
  1994  		dAtA[i] = 0xa
  1995  	}
  1996  	return len(dAtA) - i, nil
  1997  }
  1998  
  1999  func (m *TradingRewardCampaignAccountPoints) Marshal() (dAtA []byte, err error) {
  2000  	size := m.Size()
  2001  	dAtA = make([]byte, size)
  2002  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2003  	if err != nil {
  2004  		return nil, err
  2005  	}
  2006  	return dAtA[:n], nil
  2007  }
  2008  
  2009  func (m *TradingRewardCampaignAccountPoints) MarshalTo(dAtA []byte) (int, error) {
  2010  	size := m.Size()
  2011  	return m.MarshalToSizedBuffer(dAtA[:size])
  2012  }
  2013  
  2014  func (m *TradingRewardCampaignAccountPoints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2015  	i := len(dAtA)
  2016  	_ = i
  2017  	var l int
  2018  	_ = l
  2019  	{
  2020  		size := m.Points.Size()
  2021  		i -= size
  2022  		if _, err := m.Points.MarshalTo(dAtA[i:]); err != nil {
  2023  			return 0, err
  2024  		}
  2025  		i = encodeVarintGenesis(dAtA, i, uint64(size))
  2026  	}
  2027  	i--
  2028  	dAtA[i] = 0x12
  2029  	if len(m.Account) > 0 {
  2030  		i -= len(m.Account)
  2031  		copy(dAtA[i:], m.Account)
  2032  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.Account)))
  2033  		i--
  2034  		dAtA[i] = 0xa
  2035  	}
  2036  	return len(dAtA) - i, nil
  2037  }
  2038  
  2039  func (m *TradingRewardCampaignAccountPendingPoints) Marshal() (dAtA []byte, err error) {
  2040  	size := m.Size()
  2041  	dAtA = make([]byte, size)
  2042  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2043  	if err != nil {
  2044  		return nil, err
  2045  	}
  2046  	return dAtA[:n], nil
  2047  }
  2048  
  2049  func (m *TradingRewardCampaignAccountPendingPoints) MarshalTo(dAtA []byte) (int, error) {
  2050  	size := m.Size()
  2051  	return m.MarshalToSizedBuffer(dAtA[:size])
  2052  }
  2053  
  2054  func (m *TradingRewardCampaignAccountPendingPoints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2055  	i := len(dAtA)
  2056  	_ = i
  2057  	var l int
  2058  	_ = l
  2059  	if len(m.AccountPoints) > 0 {
  2060  		for iNdEx := len(m.AccountPoints) - 1; iNdEx >= 0; iNdEx-- {
  2061  			{
  2062  				size, err := m.AccountPoints[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2063  				if err != nil {
  2064  					return 0, err
  2065  				}
  2066  				i -= size
  2067  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2068  			}
  2069  			i--
  2070  			dAtA[i] = 0x12
  2071  		}
  2072  	}
  2073  	if m.RewardPoolStartTimestamp != 0 {
  2074  		i = encodeVarintGenesis(dAtA, i, uint64(m.RewardPoolStartTimestamp))
  2075  		i--
  2076  		dAtA[i] = 0x8
  2077  	}
  2078  	return len(dAtA) - i, nil
  2079  }
  2080  
  2081  func (m *SpotOrderBook) Marshal() (dAtA []byte, err error) {
  2082  	size := m.Size()
  2083  	dAtA = make([]byte, size)
  2084  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2085  	if err != nil {
  2086  		return nil, err
  2087  	}
  2088  	return dAtA[:n], nil
  2089  }
  2090  
  2091  func (m *SpotOrderBook) MarshalTo(dAtA []byte) (int, error) {
  2092  	size := m.Size()
  2093  	return m.MarshalToSizedBuffer(dAtA[:size])
  2094  }
  2095  
  2096  func (m *SpotOrderBook) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2097  	i := len(dAtA)
  2098  	_ = i
  2099  	var l int
  2100  	_ = l
  2101  	if len(m.Orders) > 0 {
  2102  		for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- {
  2103  			{
  2104  				size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2105  				if err != nil {
  2106  					return 0, err
  2107  				}
  2108  				i -= size
  2109  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2110  			}
  2111  			i--
  2112  			dAtA[i] = 0x1a
  2113  		}
  2114  	}
  2115  	if m.IsBuySide {
  2116  		i--
  2117  		if m.IsBuySide {
  2118  			dAtA[i] = 1
  2119  		} else {
  2120  			dAtA[i] = 0
  2121  		}
  2122  		i--
  2123  		dAtA[i] = 0x10
  2124  	}
  2125  	if len(m.MarketId) > 0 {
  2126  		i -= len(m.MarketId)
  2127  		copy(dAtA[i:], m.MarketId)
  2128  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.MarketId)))
  2129  		i--
  2130  		dAtA[i] = 0xa
  2131  	}
  2132  	return len(dAtA) - i, nil
  2133  }
  2134  
  2135  func (m *DerivativeOrderBook) Marshal() (dAtA []byte, err error) {
  2136  	size := m.Size()
  2137  	dAtA = make([]byte, size)
  2138  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2139  	if err != nil {
  2140  		return nil, err
  2141  	}
  2142  	return dAtA[:n], nil
  2143  }
  2144  
  2145  func (m *DerivativeOrderBook) MarshalTo(dAtA []byte) (int, error) {
  2146  	size := m.Size()
  2147  	return m.MarshalToSizedBuffer(dAtA[:size])
  2148  }
  2149  
  2150  func (m *DerivativeOrderBook) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2151  	i := len(dAtA)
  2152  	_ = i
  2153  	var l int
  2154  	_ = l
  2155  	if len(m.Orders) > 0 {
  2156  		for iNdEx := len(m.Orders) - 1; iNdEx >= 0; iNdEx-- {
  2157  			{
  2158  				size, err := m.Orders[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2159  				if err != nil {
  2160  					return 0, err
  2161  				}
  2162  				i -= size
  2163  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2164  			}
  2165  			i--
  2166  			dAtA[i] = 0x1a
  2167  		}
  2168  	}
  2169  	if m.IsBuySide {
  2170  		i--
  2171  		if m.IsBuySide {
  2172  			dAtA[i] = 1
  2173  		} else {
  2174  			dAtA[i] = 0
  2175  		}
  2176  		i--
  2177  		dAtA[i] = 0x10
  2178  	}
  2179  	if len(m.MarketId) > 0 {
  2180  		i -= len(m.MarketId)
  2181  		copy(dAtA[i:], m.MarketId)
  2182  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.MarketId)))
  2183  		i--
  2184  		dAtA[i] = 0xa
  2185  	}
  2186  	return len(dAtA) - i, nil
  2187  }
  2188  
  2189  func (m *ConditionalDerivativeOrderBook) Marshal() (dAtA []byte, err error) {
  2190  	size := m.Size()
  2191  	dAtA = make([]byte, size)
  2192  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2193  	if err != nil {
  2194  		return nil, err
  2195  	}
  2196  	return dAtA[:n], nil
  2197  }
  2198  
  2199  func (m *ConditionalDerivativeOrderBook) MarshalTo(dAtA []byte) (int, error) {
  2200  	size := m.Size()
  2201  	return m.MarshalToSizedBuffer(dAtA[:size])
  2202  }
  2203  
  2204  func (m *ConditionalDerivativeOrderBook) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2205  	i := len(dAtA)
  2206  	_ = i
  2207  	var l int
  2208  	_ = l
  2209  	if len(m.MarketSellOrders) > 0 {
  2210  		for iNdEx := len(m.MarketSellOrders) - 1; iNdEx >= 0; iNdEx-- {
  2211  			{
  2212  				size, err := m.MarketSellOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2213  				if err != nil {
  2214  					return 0, err
  2215  				}
  2216  				i -= size
  2217  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2218  			}
  2219  			i--
  2220  			dAtA[i] = 0x2a
  2221  		}
  2222  	}
  2223  	if len(m.LimitSellOrders) > 0 {
  2224  		for iNdEx := len(m.LimitSellOrders) - 1; iNdEx >= 0; iNdEx-- {
  2225  			{
  2226  				size, err := m.LimitSellOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2227  				if err != nil {
  2228  					return 0, err
  2229  				}
  2230  				i -= size
  2231  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2232  			}
  2233  			i--
  2234  			dAtA[i] = 0x22
  2235  		}
  2236  	}
  2237  	if len(m.MarketBuyOrders) > 0 {
  2238  		for iNdEx := len(m.MarketBuyOrders) - 1; iNdEx >= 0; iNdEx-- {
  2239  			{
  2240  				size, err := m.MarketBuyOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2241  				if err != nil {
  2242  					return 0, err
  2243  				}
  2244  				i -= size
  2245  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2246  			}
  2247  			i--
  2248  			dAtA[i] = 0x1a
  2249  		}
  2250  	}
  2251  	if len(m.LimitBuyOrders) > 0 {
  2252  		for iNdEx := len(m.LimitBuyOrders) - 1; iNdEx >= 0; iNdEx-- {
  2253  			{
  2254  				size, err := m.LimitBuyOrders[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2255  				if err != nil {
  2256  					return 0, err
  2257  				}
  2258  				i -= size
  2259  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2260  			}
  2261  			i--
  2262  			dAtA[i] = 0x12
  2263  		}
  2264  	}
  2265  	if len(m.MarketId) > 0 {
  2266  		i -= len(m.MarketId)
  2267  		copy(dAtA[i:], m.MarketId)
  2268  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.MarketId)))
  2269  		i--
  2270  		dAtA[i] = 0xa
  2271  	}
  2272  	return len(dAtA) - i, nil
  2273  }
  2274  
  2275  func (m *Balance) Marshal() (dAtA []byte, err error) {
  2276  	size := m.Size()
  2277  	dAtA = make([]byte, size)
  2278  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2279  	if err != nil {
  2280  		return nil, err
  2281  	}
  2282  	return dAtA[:n], nil
  2283  }
  2284  
  2285  func (m *Balance) MarshalTo(dAtA []byte) (int, error) {
  2286  	size := m.Size()
  2287  	return m.MarshalToSizedBuffer(dAtA[:size])
  2288  }
  2289  
  2290  func (m *Balance) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2291  	i := len(dAtA)
  2292  	_ = i
  2293  	var l int
  2294  	_ = l
  2295  	if m.Deposits != nil {
  2296  		{
  2297  			size, err := m.Deposits.MarshalToSizedBuffer(dAtA[:i])
  2298  			if err != nil {
  2299  				return 0, err
  2300  			}
  2301  			i -= size
  2302  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  2303  		}
  2304  		i--
  2305  		dAtA[i] = 0x1a
  2306  	}
  2307  	if len(m.Denom) > 0 {
  2308  		i -= len(m.Denom)
  2309  		copy(dAtA[i:], m.Denom)
  2310  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.Denom)))
  2311  		i--
  2312  		dAtA[i] = 0x12
  2313  	}
  2314  	if len(m.SubaccountId) > 0 {
  2315  		i -= len(m.SubaccountId)
  2316  		copy(dAtA[i:], m.SubaccountId)
  2317  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.SubaccountId)))
  2318  		i--
  2319  		dAtA[i] = 0xa
  2320  	}
  2321  	return len(dAtA) - i, nil
  2322  }
  2323  
  2324  func (m *DerivativePosition) Marshal() (dAtA []byte, err error) {
  2325  	size := m.Size()
  2326  	dAtA = make([]byte, size)
  2327  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2328  	if err != nil {
  2329  		return nil, err
  2330  	}
  2331  	return dAtA[:n], nil
  2332  }
  2333  
  2334  func (m *DerivativePosition) MarshalTo(dAtA []byte) (int, error) {
  2335  	size := m.Size()
  2336  	return m.MarshalToSizedBuffer(dAtA[:size])
  2337  }
  2338  
  2339  func (m *DerivativePosition) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2340  	i := len(dAtA)
  2341  	_ = i
  2342  	var l int
  2343  	_ = l
  2344  	if m.Position != nil {
  2345  		{
  2346  			size, err := m.Position.MarshalToSizedBuffer(dAtA[:i])
  2347  			if err != nil {
  2348  				return 0, err
  2349  			}
  2350  			i -= size
  2351  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  2352  		}
  2353  		i--
  2354  		dAtA[i] = 0x1a
  2355  	}
  2356  	if len(m.MarketId) > 0 {
  2357  		i -= len(m.MarketId)
  2358  		copy(dAtA[i:], m.MarketId)
  2359  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.MarketId)))
  2360  		i--
  2361  		dAtA[i] = 0x12
  2362  	}
  2363  	if len(m.SubaccountId) > 0 {
  2364  		i -= len(m.SubaccountId)
  2365  		copy(dAtA[i:], m.SubaccountId)
  2366  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.SubaccountId)))
  2367  		i--
  2368  		dAtA[i] = 0xa
  2369  	}
  2370  	return len(dAtA) - i, nil
  2371  }
  2372  
  2373  func (m *SubaccountNonce) Marshal() (dAtA []byte, err error) {
  2374  	size := m.Size()
  2375  	dAtA = make([]byte, size)
  2376  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2377  	if err != nil {
  2378  		return nil, err
  2379  	}
  2380  	return dAtA[:n], nil
  2381  }
  2382  
  2383  func (m *SubaccountNonce) MarshalTo(dAtA []byte) (int, error) {
  2384  	size := m.Size()
  2385  	return m.MarshalToSizedBuffer(dAtA[:size])
  2386  }
  2387  
  2388  func (m *SubaccountNonce) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2389  	i := len(dAtA)
  2390  	_ = i
  2391  	var l int
  2392  	_ = l
  2393  	{
  2394  		size, err := m.SubaccountTradeNonce.MarshalToSizedBuffer(dAtA[:i])
  2395  		if err != nil {
  2396  			return 0, err
  2397  		}
  2398  		i -= size
  2399  		i = encodeVarintGenesis(dAtA, i, uint64(size))
  2400  	}
  2401  	i--
  2402  	dAtA[i] = 0x12
  2403  	if len(m.SubaccountId) > 0 {
  2404  		i -= len(m.SubaccountId)
  2405  		copy(dAtA[i:], m.SubaccountId)
  2406  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.SubaccountId)))
  2407  		i--
  2408  		dAtA[i] = 0xa
  2409  	}
  2410  	return len(dAtA) - i, nil
  2411  }
  2412  
  2413  func (m *ExpiryFuturesMarketInfoState) Marshal() (dAtA []byte, err error) {
  2414  	size := m.Size()
  2415  	dAtA = make([]byte, size)
  2416  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2417  	if err != nil {
  2418  		return nil, err
  2419  	}
  2420  	return dAtA[:n], nil
  2421  }
  2422  
  2423  func (m *ExpiryFuturesMarketInfoState) MarshalTo(dAtA []byte) (int, error) {
  2424  	size := m.Size()
  2425  	return m.MarshalToSizedBuffer(dAtA[:size])
  2426  }
  2427  
  2428  func (m *ExpiryFuturesMarketInfoState) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2429  	i := len(dAtA)
  2430  	_ = i
  2431  	var l int
  2432  	_ = l
  2433  	if m.MarketInfo != nil {
  2434  		{
  2435  			size, err := m.MarketInfo.MarshalToSizedBuffer(dAtA[:i])
  2436  			if err != nil {
  2437  				return 0, err
  2438  			}
  2439  			i -= size
  2440  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  2441  		}
  2442  		i--
  2443  		dAtA[i] = 0x12
  2444  	}
  2445  	if len(m.MarketId) > 0 {
  2446  		i -= len(m.MarketId)
  2447  		copy(dAtA[i:], m.MarketId)
  2448  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.MarketId)))
  2449  		i--
  2450  		dAtA[i] = 0xa
  2451  	}
  2452  	return len(dAtA) - i, nil
  2453  }
  2454  
  2455  func (m *PerpetualMarketFundingState) Marshal() (dAtA []byte, err error) {
  2456  	size := m.Size()
  2457  	dAtA = make([]byte, size)
  2458  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2459  	if err != nil {
  2460  		return nil, err
  2461  	}
  2462  	return dAtA[:n], nil
  2463  }
  2464  
  2465  func (m *PerpetualMarketFundingState) MarshalTo(dAtA []byte) (int, error) {
  2466  	size := m.Size()
  2467  	return m.MarshalToSizedBuffer(dAtA[:size])
  2468  }
  2469  
  2470  func (m *PerpetualMarketFundingState) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2471  	i := len(dAtA)
  2472  	_ = i
  2473  	var l int
  2474  	_ = l
  2475  	if m.Funding != nil {
  2476  		{
  2477  			size, err := m.Funding.MarshalToSizedBuffer(dAtA[:i])
  2478  			if err != nil {
  2479  				return 0, err
  2480  			}
  2481  			i -= size
  2482  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  2483  		}
  2484  		i--
  2485  		dAtA[i] = 0x12
  2486  	}
  2487  	if len(m.MarketId) > 0 {
  2488  		i -= len(m.MarketId)
  2489  		copy(dAtA[i:], m.MarketId)
  2490  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.MarketId)))
  2491  		i--
  2492  		dAtA[i] = 0xa
  2493  	}
  2494  	return len(dAtA) - i, nil
  2495  }
  2496  
  2497  func (m *FullGrantAuthorizations) Marshal() (dAtA []byte, err error) {
  2498  	size := m.Size()
  2499  	dAtA = make([]byte, size)
  2500  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2501  	if err != nil {
  2502  		return nil, err
  2503  	}
  2504  	return dAtA[:n], nil
  2505  }
  2506  
  2507  func (m *FullGrantAuthorizations) MarshalTo(dAtA []byte) (int, error) {
  2508  	size := m.Size()
  2509  	return m.MarshalToSizedBuffer(dAtA[:size])
  2510  }
  2511  
  2512  func (m *FullGrantAuthorizations) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2513  	i := len(dAtA)
  2514  	_ = i
  2515  	var l int
  2516  	_ = l
  2517  	if len(m.Grants) > 0 {
  2518  		for iNdEx := len(m.Grants) - 1; iNdEx >= 0; iNdEx-- {
  2519  			{
  2520  				size, err := m.Grants[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2521  				if err != nil {
  2522  					return 0, err
  2523  				}
  2524  				i -= size
  2525  				i = encodeVarintGenesis(dAtA, i, uint64(size))
  2526  			}
  2527  			i--
  2528  			dAtA[i] = 0x22
  2529  		}
  2530  	}
  2531  	if m.LastDelegationsCheckedTime != 0 {
  2532  		i = encodeVarintGenesis(dAtA, i, uint64(m.LastDelegationsCheckedTime))
  2533  		i--
  2534  		dAtA[i] = 0x18
  2535  	}
  2536  	{
  2537  		size := m.TotalGrantAmount.Size()
  2538  		i -= size
  2539  		if _, err := m.TotalGrantAmount.MarshalTo(dAtA[i:]); err != nil {
  2540  			return 0, err
  2541  		}
  2542  		i = encodeVarintGenesis(dAtA, i, uint64(size))
  2543  	}
  2544  	i--
  2545  	dAtA[i] = 0x12
  2546  	if len(m.Granter) > 0 {
  2547  		i -= len(m.Granter)
  2548  		copy(dAtA[i:], m.Granter)
  2549  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.Granter)))
  2550  		i--
  2551  		dAtA[i] = 0xa
  2552  	}
  2553  	return len(dAtA) - i, nil
  2554  }
  2555  
  2556  func (m *FullActiveGrant) Marshal() (dAtA []byte, err error) {
  2557  	size := m.Size()
  2558  	dAtA = make([]byte, size)
  2559  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2560  	if err != nil {
  2561  		return nil, err
  2562  	}
  2563  	return dAtA[:n], nil
  2564  }
  2565  
  2566  func (m *FullActiveGrant) MarshalTo(dAtA []byte) (int, error) {
  2567  	size := m.Size()
  2568  	return m.MarshalToSizedBuffer(dAtA[:size])
  2569  }
  2570  
  2571  func (m *FullActiveGrant) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2572  	i := len(dAtA)
  2573  	_ = i
  2574  	var l int
  2575  	_ = l
  2576  	if m.ActiveGrant != nil {
  2577  		{
  2578  			size, err := m.ActiveGrant.MarshalToSizedBuffer(dAtA[:i])
  2579  			if err != nil {
  2580  				return 0, err
  2581  			}
  2582  			i -= size
  2583  			i = encodeVarintGenesis(dAtA, i, uint64(size))
  2584  		}
  2585  		i--
  2586  		dAtA[i] = 0x12
  2587  	}
  2588  	if len(m.Grantee) > 0 {
  2589  		i -= len(m.Grantee)
  2590  		copy(dAtA[i:], m.Grantee)
  2591  		i = encodeVarintGenesis(dAtA, i, uint64(len(m.Grantee)))
  2592  		i--
  2593  		dAtA[i] = 0xa
  2594  	}
  2595  	return len(dAtA) - i, nil
  2596  }
  2597  
  2598  func encodeVarintGenesis(dAtA []byte, offset int, v uint64) int {
  2599  	offset -= sovGenesis(v)
  2600  	base := offset
  2601  	for v >= 1<<7 {
  2602  		dAtA[offset] = uint8(v&0x7f | 0x80)
  2603  		v >>= 7
  2604  		offset++
  2605  	}
  2606  	dAtA[offset] = uint8(v)
  2607  	return base
  2608  }
  2609  func (m *GenesisState) Size() (n int) {
  2610  	if m == nil {
  2611  		return 0
  2612  	}
  2613  	var l int
  2614  	_ = l
  2615  	l = m.Params.Size()
  2616  	n += 1 + l + sovGenesis(uint64(l))
  2617  	if len(m.SpotMarkets) > 0 {
  2618  		for _, e := range m.SpotMarkets {
  2619  			l = e.Size()
  2620  			n += 1 + l + sovGenesis(uint64(l))
  2621  		}
  2622  	}
  2623  	if len(m.DerivativeMarkets) > 0 {
  2624  		for _, e := range m.DerivativeMarkets {
  2625  			l = e.Size()
  2626  			n += 1 + l + sovGenesis(uint64(l))
  2627  		}
  2628  	}
  2629  	if len(m.SpotOrderbook) > 0 {
  2630  		for _, e := range m.SpotOrderbook {
  2631  			l = e.Size()
  2632  			n += 1 + l + sovGenesis(uint64(l))
  2633  		}
  2634  	}
  2635  	if len(m.DerivativeOrderbook) > 0 {
  2636  		for _, e := range m.DerivativeOrderbook {
  2637  			l = e.Size()
  2638  			n += 1 + l + sovGenesis(uint64(l))
  2639  		}
  2640  	}
  2641  	if len(m.Balances) > 0 {
  2642  		for _, e := range m.Balances {
  2643  			l = e.Size()
  2644  			n += 1 + l + sovGenesis(uint64(l))
  2645  		}
  2646  	}
  2647  	if len(m.Positions) > 0 {
  2648  		for _, e := range m.Positions {
  2649  			l = e.Size()
  2650  			n += 1 + l + sovGenesis(uint64(l))
  2651  		}
  2652  	}
  2653  	if len(m.SubaccountTradeNonces) > 0 {
  2654  		for _, e := range m.SubaccountTradeNonces {
  2655  			l = e.Size()
  2656  			n += 1 + l + sovGenesis(uint64(l))
  2657  		}
  2658  	}
  2659  	if len(m.ExpiryFuturesMarketInfoState) > 0 {
  2660  		for _, e := range m.ExpiryFuturesMarketInfoState {
  2661  			l = e.Size()
  2662  			n += 1 + l + sovGenesis(uint64(l))
  2663  		}
  2664  	}
  2665  	if len(m.PerpetualMarketInfo) > 0 {
  2666  		for _, e := range m.PerpetualMarketInfo {
  2667  			l = e.Size()
  2668  			n += 1 + l + sovGenesis(uint64(l))
  2669  		}
  2670  	}
  2671  	if len(m.PerpetualMarketFundingState) > 0 {
  2672  		for _, e := range m.PerpetualMarketFundingState {
  2673  			l = e.Size()
  2674  			n += 1 + l + sovGenesis(uint64(l))
  2675  		}
  2676  	}
  2677  	if len(m.DerivativeMarketSettlementScheduled) > 0 {
  2678  		for _, e := range m.DerivativeMarketSettlementScheduled {
  2679  			l = e.Size()
  2680  			n += 1 + l + sovGenesis(uint64(l))
  2681  		}
  2682  	}
  2683  	if m.IsSpotExchangeEnabled {
  2684  		n += 2
  2685  	}
  2686  	if m.IsDerivativesExchangeEnabled {
  2687  		n += 2
  2688  	}
  2689  	if m.TradingRewardCampaignInfo != nil {
  2690  		l = m.TradingRewardCampaignInfo.Size()
  2691  		n += 1 + l + sovGenesis(uint64(l))
  2692  	}
  2693  	if len(m.TradingRewardPoolCampaignSchedule) > 0 {
  2694  		for _, e := range m.TradingRewardPoolCampaignSchedule {
  2695  			l = e.Size()
  2696  			n += 2 + l + sovGenesis(uint64(l))
  2697  		}
  2698  	}
  2699  	if len(m.TradingRewardCampaignAccountPoints) > 0 {
  2700  		for _, e := range m.TradingRewardCampaignAccountPoints {
  2701  			l = e.Size()
  2702  			n += 2 + l + sovGenesis(uint64(l))
  2703  		}
  2704  	}
  2705  	if m.FeeDiscountSchedule != nil {
  2706  		l = m.FeeDiscountSchedule.Size()
  2707  		n += 2 + l + sovGenesis(uint64(l))
  2708  	}
  2709  	if len(m.FeeDiscountAccountTierTtl) > 0 {
  2710  		for _, e := range m.FeeDiscountAccountTierTtl {
  2711  			l = e.Size()
  2712  			n += 2 + l + sovGenesis(uint64(l))
  2713  		}
  2714  	}
  2715  	if len(m.FeeDiscountBucketVolumeAccounts) > 0 {
  2716  		for _, e := range m.FeeDiscountBucketVolumeAccounts {
  2717  			l = e.Size()
  2718  			n += 2 + l + sovGenesis(uint64(l))
  2719  		}
  2720  	}
  2721  	if m.IsFirstFeeCycleFinished {
  2722  		n += 3
  2723  	}
  2724  	if len(m.PendingTradingRewardPoolCampaignSchedule) > 0 {
  2725  		for _, e := range m.PendingTradingRewardPoolCampaignSchedule {
  2726  			l = e.Size()
  2727  			n += 2 + l + sovGenesis(uint64(l))
  2728  		}
  2729  	}
  2730  	if len(m.PendingTradingRewardCampaignAccountPoints) > 0 {
  2731  		for _, e := range m.PendingTradingRewardCampaignAccountPoints {
  2732  			l = e.Size()
  2733  			n += 2 + l + sovGenesis(uint64(l))
  2734  		}
  2735  	}
  2736  	if len(m.RewardsOptOutAddresses) > 0 {
  2737  		for _, s := range m.RewardsOptOutAddresses {
  2738  			l = len(s)
  2739  			n += 2 + l + sovGenesis(uint64(l))
  2740  		}
  2741  	}
  2742  	if len(m.HistoricalTradeRecords) > 0 {
  2743  		for _, e := range m.HistoricalTradeRecords {
  2744  			l = e.Size()
  2745  			n += 2 + l + sovGenesis(uint64(l))
  2746  		}
  2747  	}
  2748  	if len(m.BinaryOptionsMarkets) > 0 {
  2749  		for _, e := range m.BinaryOptionsMarkets {
  2750  			l = e.Size()
  2751  			n += 2 + l + sovGenesis(uint64(l))
  2752  		}
  2753  	}
  2754  	if len(m.BinaryOptionsMarketIdsScheduledForSettlement) > 0 {
  2755  		for _, s := range m.BinaryOptionsMarketIdsScheduledForSettlement {
  2756  			l = len(s)
  2757  			n += 2 + l + sovGenesis(uint64(l))
  2758  		}
  2759  	}
  2760  	if len(m.SpotMarketIdsScheduledToForceClose) > 0 {
  2761  		for _, s := range m.SpotMarketIdsScheduledToForceClose {
  2762  			l = len(s)
  2763  			n += 2 + l + sovGenesis(uint64(l))
  2764  		}
  2765  	}
  2766  	if len(m.DenomDecimals) > 0 {
  2767  		for _, e := range m.DenomDecimals {
  2768  			l = e.Size()
  2769  			n += 2 + l + sovGenesis(uint64(l))
  2770  		}
  2771  	}
  2772  	if len(m.ConditionalDerivativeOrderbooks) > 0 {
  2773  		for _, e := range m.ConditionalDerivativeOrderbooks {
  2774  			l = e.Size()
  2775  			n += 2 + l + sovGenesis(uint64(l))
  2776  		}
  2777  	}
  2778  	if len(m.MarketFeeMultipliers) > 0 {
  2779  		for _, e := range m.MarketFeeMultipliers {
  2780  			l = e.Size()
  2781  			n += 2 + l + sovGenesis(uint64(l))
  2782  		}
  2783  	}
  2784  	if len(m.OrderbookSequences) > 0 {
  2785  		for _, e := range m.OrderbookSequences {
  2786  			l = e.Size()
  2787  			n += 2 + l + sovGenesis(uint64(l))
  2788  		}
  2789  	}
  2790  	if len(m.SubaccountVolumes) > 0 {
  2791  		for _, e := range m.SubaccountVolumes {
  2792  			l = e.Size()
  2793  			n += 2 + l + sovGenesis(uint64(l))
  2794  		}
  2795  	}
  2796  	if len(m.MarketVolumes) > 0 {
  2797  		for _, e := range m.MarketVolumes {
  2798  			l = e.Size()
  2799  			n += 2 + l + sovGenesis(uint64(l))
  2800  		}
  2801  	}
  2802  	if len(m.GrantAuthorizations) > 0 {
  2803  		for _, e := range m.GrantAuthorizations {
  2804  			l = e.Size()
  2805  			n += 2 + l + sovGenesis(uint64(l))
  2806  		}
  2807  	}
  2808  	if len(m.ActiveGrants) > 0 {
  2809  		for _, e := range m.ActiveGrants {
  2810  			l = e.Size()
  2811  			n += 2 + l + sovGenesis(uint64(l))
  2812  		}
  2813  	}
  2814  	return n
  2815  }
  2816  
  2817  func (m *OrderbookSequence) Size() (n int) {
  2818  	if m == nil {
  2819  		return 0
  2820  	}
  2821  	var l int
  2822  	_ = l
  2823  	if m.Sequence != 0 {
  2824  		n += 1 + sovGenesis(uint64(m.Sequence))
  2825  	}
  2826  	l = len(m.MarketId)
  2827  	if l > 0 {
  2828  		n += 1 + l + sovGenesis(uint64(l))
  2829  	}
  2830  	return n
  2831  }
  2832  
  2833  func (m *FeeDiscountAccountTierTTL) Size() (n int) {
  2834  	if m == nil {
  2835  		return 0
  2836  	}
  2837  	var l int
  2838  	_ = l
  2839  	l = len(m.Account)
  2840  	if l > 0 {
  2841  		n += 1 + l + sovGenesis(uint64(l))
  2842  	}
  2843  	if m.TierTtl != nil {
  2844  		l = m.TierTtl.Size()
  2845  		n += 1 + l + sovGenesis(uint64(l))
  2846  	}
  2847  	return n
  2848  }
  2849  
  2850  func (m *FeeDiscountBucketVolumeAccounts) Size() (n int) {
  2851  	if m == nil {
  2852  		return 0
  2853  	}
  2854  	var l int
  2855  	_ = l
  2856  	if m.BucketStartTimestamp != 0 {
  2857  		n += 1 + sovGenesis(uint64(m.BucketStartTimestamp))
  2858  	}
  2859  	if len(m.AccountVolume) > 0 {
  2860  		for _, e := range m.AccountVolume {
  2861  			l = e.Size()
  2862  			n += 1 + l + sovGenesis(uint64(l))
  2863  		}
  2864  	}
  2865  	return n
  2866  }
  2867  
  2868  func (m *AccountVolume) Size() (n int) {
  2869  	if m == nil {
  2870  		return 0
  2871  	}
  2872  	var l int
  2873  	_ = l
  2874  	l = len(m.Account)
  2875  	if l > 0 {
  2876  		n += 1 + l + sovGenesis(uint64(l))
  2877  	}
  2878  	l = m.Volume.Size()
  2879  	n += 1 + l + sovGenesis(uint64(l))
  2880  	return n
  2881  }
  2882  
  2883  func (m *TradingRewardCampaignAccountPoints) Size() (n int) {
  2884  	if m == nil {
  2885  		return 0
  2886  	}
  2887  	var l int
  2888  	_ = l
  2889  	l = len(m.Account)
  2890  	if l > 0 {
  2891  		n += 1 + l + sovGenesis(uint64(l))
  2892  	}
  2893  	l = m.Points.Size()
  2894  	n += 1 + l + sovGenesis(uint64(l))
  2895  	return n
  2896  }
  2897  
  2898  func (m *TradingRewardCampaignAccountPendingPoints) Size() (n int) {
  2899  	if m == nil {
  2900  		return 0
  2901  	}
  2902  	var l int
  2903  	_ = l
  2904  	if m.RewardPoolStartTimestamp != 0 {
  2905  		n += 1 + sovGenesis(uint64(m.RewardPoolStartTimestamp))
  2906  	}
  2907  	if len(m.AccountPoints) > 0 {
  2908  		for _, e := range m.AccountPoints {
  2909  			l = e.Size()
  2910  			n += 1 + l + sovGenesis(uint64(l))
  2911  		}
  2912  	}
  2913  	return n
  2914  }
  2915  
  2916  func (m *SpotOrderBook) Size() (n int) {
  2917  	if m == nil {
  2918  		return 0
  2919  	}
  2920  	var l int
  2921  	_ = l
  2922  	l = len(m.MarketId)
  2923  	if l > 0 {
  2924  		n += 1 + l + sovGenesis(uint64(l))
  2925  	}
  2926  	if m.IsBuySide {
  2927  		n += 2
  2928  	}
  2929  	if len(m.Orders) > 0 {
  2930  		for _, e := range m.Orders {
  2931  			l = e.Size()
  2932  			n += 1 + l + sovGenesis(uint64(l))
  2933  		}
  2934  	}
  2935  	return n
  2936  }
  2937  
  2938  func (m *DerivativeOrderBook) Size() (n int) {
  2939  	if m == nil {
  2940  		return 0
  2941  	}
  2942  	var l int
  2943  	_ = l
  2944  	l = len(m.MarketId)
  2945  	if l > 0 {
  2946  		n += 1 + l + sovGenesis(uint64(l))
  2947  	}
  2948  	if m.IsBuySide {
  2949  		n += 2
  2950  	}
  2951  	if len(m.Orders) > 0 {
  2952  		for _, e := range m.Orders {
  2953  			l = e.Size()
  2954  			n += 1 + l + sovGenesis(uint64(l))
  2955  		}
  2956  	}
  2957  	return n
  2958  }
  2959  
  2960  func (m *ConditionalDerivativeOrderBook) Size() (n int) {
  2961  	if m == nil {
  2962  		return 0
  2963  	}
  2964  	var l int
  2965  	_ = l
  2966  	l = len(m.MarketId)
  2967  	if l > 0 {
  2968  		n += 1 + l + sovGenesis(uint64(l))
  2969  	}
  2970  	if len(m.LimitBuyOrders) > 0 {
  2971  		for _, e := range m.LimitBuyOrders {
  2972  			l = e.Size()
  2973  			n += 1 + l + sovGenesis(uint64(l))
  2974  		}
  2975  	}
  2976  	if len(m.MarketBuyOrders) > 0 {
  2977  		for _, e := range m.MarketBuyOrders {
  2978  			l = e.Size()
  2979  			n += 1 + l + sovGenesis(uint64(l))
  2980  		}
  2981  	}
  2982  	if len(m.LimitSellOrders) > 0 {
  2983  		for _, e := range m.LimitSellOrders {
  2984  			l = e.Size()
  2985  			n += 1 + l + sovGenesis(uint64(l))
  2986  		}
  2987  	}
  2988  	if len(m.MarketSellOrders) > 0 {
  2989  		for _, e := range m.MarketSellOrders {
  2990  			l = e.Size()
  2991  			n += 1 + l + sovGenesis(uint64(l))
  2992  		}
  2993  	}
  2994  	return n
  2995  }
  2996  
  2997  func (m *Balance) Size() (n int) {
  2998  	if m == nil {
  2999  		return 0
  3000  	}
  3001  	var l int
  3002  	_ = l
  3003  	l = len(m.SubaccountId)
  3004  	if l > 0 {
  3005  		n += 1 + l + sovGenesis(uint64(l))
  3006  	}
  3007  	l = len(m.Denom)
  3008  	if l > 0 {
  3009  		n += 1 + l + sovGenesis(uint64(l))
  3010  	}
  3011  	if m.Deposits != nil {
  3012  		l = m.Deposits.Size()
  3013  		n += 1 + l + sovGenesis(uint64(l))
  3014  	}
  3015  	return n
  3016  }
  3017  
  3018  func (m *DerivativePosition) Size() (n int) {
  3019  	if m == nil {
  3020  		return 0
  3021  	}
  3022  	var l int
  3023  	_ = l
  3024  	l = len(m.SubaccountId)
  3025  	if l > 0 {
  3026  		n += 1 + l + sovGenesis(uint64(l))
  3027  	}
  3028  	l = len(m.MarketId)
  3029  	if l > 0 {
  3030  		n += 1 + l + sovGenesis(uint64(l))
  3031  	}
  3032  	if m.Position != nil {
  3033  		l = m.Position.Size()
  3034  		n += 1 + l + sovGenesis(uint64(l))
  3035  	}
  3036  	return n
  3037  }
  3038  
  3039  func (m *SubaccountNonce) Size() (n int) {
  3040  	if m == nil {
  3041  		return 0
  3042  	}
  3043  	var l int
  3044  	_ = l
  3045  	l = len(m.SubaccountId)
  3046  	if l > 0 {
  3047  		n += 1 + l + sovGenesis(uint64(l))
  3048  	}
  3049  	l = m.SubaccountTradeNonce.Size()
  3050  	n += 1 + l + sovGenesis(uint64(l))
  3051  	return n
  3052  }
  3053  
  3054  func (m *ExpiryFuturesMarketInfoState) Size() (n int) {
  3055  	if m == nil {
  3056  		return 0
  3057  	}
  3058  	var l int
  3059  	_ = l
  3060  	l = len(m.MarketId)
  3061  	if l > 0 {
  3062  		n += 1 + l + sovGenesis(uint64(l))
  3063  	}
  3064  	if m.MarketInfo != nil {
  3065  		l = m.MarketInfo.Size()
  3066  		n += 1 + l + sovGenesis(uint64(l))
  3067  	}
  3068  	return n
  3069  }
  3070  
  3071  func (m *PerpetualMarketFundingState) Size() (n int) {
  3072  	if m == nil {
  3073  		return 0
  3074  	}
  3075  	var l int
  3076  	_ = l
  3077  	l = len(m.MarketId)
  3078  	if l > 0 {
  3079  		n += 1 + l + sovGenesis(uint64(l))
  3080  	}
  3081  	if m.Funding != nil {
  3082  		l = m.Funding.Size()
  3083  		n += 1 + l + sovGenesis(uint64(l))
  3084  	}
  3085  	return n
  3086  }
  3087  
  3088  func (m *FullGrantAuthorizations) Size() (n int) {
  3089  	if m == nil {
  3090  		return 0
  3091  	}
  3092  	var l int
  3093  	_ = l
  3094  	l = len(m.Granter)
  3095  	if l > 0 {
  3096  		n += 1 + l + sovGenesis(uint64(l))
  3097  	}
  3098  	l = m.TotalGrantAmount.Size()
  3099  	n += 1 + l + sovGenesis(uint64(l))
  3100  	if m.LastDelegationsCheckedTime != 0 {
  3101  		n += 1 + sovGenesis(uint64(m.LastDelegationsCheckedTime))
  3102  	}
  3103  	if len(m.Grants) > 0 {
  3104  		for _, e := range m.Grants {
  3105  			l = e.Size()
  3106  			n += 1 + l + sovGenesis(uint64(l))
  3107  		}
  3108  	}
  3109  	return n
  3110  }
  3111  
  3112  func (m *FullActiveGrant) Size() (n int) {
  3113  	if m == nil {
  3114  		return 0
  3115  	}
  3116  	var l int
  3117  	_ = l
  3118  	l = len(m.Grantee)
  3119  	if l > 0 {
  3120  		n += 1 + l + sovGenesis(uint64(l))
  3121  	}
  3122  	if m.ActiveGrant != nil {
  3123  		l = m.ActiveGrant.Size()
  3124  		n += 1 + l + sovGenesis(uint64(l))
  3125  	}
  3126  	return n
  3127  }
  3128  
  3129  func sovGenesis(x uint64) (n int) {
  3130  	return (math_bits.Len64(x|1) + 6) / 7
  3131  }
  3132  func sozGenesis(x uint64) (n int) {
  3133  	return sovGenesis(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  3134  }
  3135  func (m *GenesisState) Unmarshal(dAtA []byte) error {
  3136  	l := len(dAtA)
  3137  	iNdEx := 0
  3138  	for iNdEx < l {
  3139  		preIndex := iNdEx
  3140  		var wire uint64
  3141  		for shift := uint(0); ; shift += 7 {
  3142  			if shift >= 64 {
  3143  				return ErrIntOverflowGenesis
  3144  			}
  3145  			if iNdEx >= l {
  3146  				return io.ErrUnexpectedEOF
  3147  			}
  3148  			b := dAtA[iNdEx]
  3149  			iNdEx++
  3150  			wire |= uint64(b&0x7F) << shift
  3151  			if b < 0x80 {
  3152  				break
  3153  			}
  3154  		}
  3155  		fieldNum := int32(wire >> 3)
  3156  		wireType := int(wire & 0x7)
  3157  		if wireType == 4 {
  3158  			return fmt.Errorf("proto: GenesisState: wiretype end group for non-group")
  3159  		}
  3160  		if fieldNum <= 0 {
  3161  			return fmt.Errorf("proto: GenesisState: illegal tag %d (wire type %d)", fieldNum, wire)
  3162  		}
  3163  		switch fieldNum {
  3164  		case 1:
  3165  			if wireType != 2 {
  3166  				return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
  3167  			}
  3168  			var msglen int
  3169  			for shift := uint(0); ; shift += 7 {
  3170  				if shift >= 64 {
  3171  					return ErrIntOverflowGenesis
  3172  				}
  3173  				if iNdEx >= l {
  3174  					return io.ErrUnexpectedEOF
  3175  				}
  3176  				b := dAtA[iNdEx]
  3177  				iNdEx++
  3178  				msglen |= int(b&0x7F) << shift
  3179  				if b < 0x80 {
  3180  					break
  3181  				}
  3182  			}
  3183  			if msglen < 0 {
  3184  				return ErrInvalidLengthGenesis
  3185  			}
  3186  			postIndex := iNdEx + msglen
  3187  			if postIndex < 0 {
  3188  				return ErrInvalidLengthGenesis
  3189  			}
  3190  			if postIndex > l {
  3191  				return io.ErrUnexpectedEOF
  3192  			}
  3193  			if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3194  				return err
  3195  			}
  3196  			iNdEx = postIndex
  3197  		case 2:
  3198  			if wireType != 2 {
  3199  				return fmt.Errorf("proto: wrong wireType = %d for field SpotMarkets", wireType)
  3200  			}
  3201  			var msglen int
  3202  			for shift := uint(0); ; shift += 7 {
  3203  				if shift >= 64 {
  3204  					return ErrIntOverflowGenesis
  3205  				}
  3206  				if iNdEx >= l {
  3207  					return io.ErrUnexpectedEOF
  3208  				}
  3209  				b := dAtA[iNdEx]
  3210  				iNdEx++
  3211  				msglen |= int(b&0x7F) << shift
  3212  				if b < 0x80 {
  3213  					break
  3214  				}
  3215  			}
  3216  			if msglen < 0 {
  3217  				return ErrInvalidLengthGenesis
  3218  			}
  3219  			postIndex := iNdEx + msglen
  3220  			if postIndex < 0 {
  3221  				return ErrInvalidLengthGenesis
  3222  			}
  3223  			if postIndex > l {
  3224  				return io.ErrUnexpectedEOF
  3225  			}
  3226  			m.SpotMarkets = append(m.SpotMarkets, &SpotMarket{})
  3227  			if err := m.SpotMarkets[len(m.SpotMarkets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3228  				return err
  3229  			}
  3230  			iNdEx = postIndex
  3231  		case 3:
  3232  			if wireType != 2 {
  3233  				return fmt.Errorf("proto: wrong wireType = %d for field DerivativeMarkets", wireType)
  3234  			}
  3235  			var msglen int
  3236  			for shift := uint(0); ; shift += 7 {
  3237  				if shift >= 64 {
  3238  					return ErrIntOverflowGenesis
  3239  				}
  3240  				if iNdEx >= l {
  3241  					return io.ErrUnexpectedEOF
  3242  				}
  3243  				b := dAtA[iNdEx]
  3244  				iNdEx++
  3245  				msglen |= int(b&0x7F) << shift
  3246  				if b < 0x80 {
  3247  					break
  3248  				}
  3249  			}
  3250  			if msglen < 0 {
  3251  				return ErrInvalidLengthGenesis
  3252  			}
  3253  			postIndex := iNdEx + msglen
  3254  			if postIndex < 0 {
  3255  				return ErrInvalidLengthGenesis
  3256  			}
  3257  			if postIndex > l {
  3258  				return io.ErrUnexpectedEOF
  3259  			}
  3260  			m.DerivativeMarkets = append(m.DerivativeMarkets, &DerivativeMarket{})
  3261  			if err := m.DerivativeMarkets[len(m.DerivativeMarkets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3262  				return err
  3263  			}
  3264  			iNdEx = postIndex
  3265  		case 4:
  3266  			if wireType != 2 {
  3267  				return fmt.Errorf("proto: wrong wireType = %d for field SpotOrderbook", wireType)
  3268  			}
  3269  			var msglen int
  3270  			for shift := uint(0); ; shift += 7 {
  3271  				if shift >= 64 {
  3272  					return ErrIntOverflowGenesis
  3273  				}
  3274  				if iNdEx >= l {
  3275  					return io.ErrUnexpectedEOF
  3276  				}
  3277  				b := dAtA[iNdEx]
  3278  				iNdEx++
  3279  				msglen |= int(b&0x7F) << shift
  3280  				if b < 0x80 {
  3281  					break
  3282  				}
  3283  			}
  3284  			if msglen < 0 {
  3285  				return ErrInvalidLengthGenesis
  3286  			}
  3287  			postIndex := iNdEx + msglen
  3288  			if postIndex < 0 {
  3289  				return ErrInvalidLengthGenesis
  3290  			}
  3291  			if postIndex > l {
  3292  				return io.ErrUnexpectedEOF
  3293  			}
  3294  			m.SpotOrderbook = append(m.SpotOrderbook, SpotOrderBook{})
  3295  			if err := m.SpotOrderbook[len(m.SpotOrderbook)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3296  				return err
  3297  			}
  3298  			iNdEx = postIndex
  3299  		case 5:
  3300  			if wireType != 2 {
  3301  				return fmt.Errorf("proto: wrong wireType = %d for field DerivativeOrderbook", wireType)
  3302  			}
  3303  			var msglen int
  3304  			for shift := uint(0); ; shift += 7 {
  3305  				if shift >= 64 {
  3306  					return ErrIntOverflowGenesis
  3307  				}
  3308  				if iNdEx >= l {
  3309  					return io.ErrUnexpectedEOF
  3310  				}
  3311  				b := dAtA[iNdEx]
  3312  				iNdEx++
  3313  				msglen |= int(b&0x7F) << shift
  3314  				if b < 0x80 {
  3315  					break
  3316  				}
  3317  			}
  3318  			if msglen < 0 {
  3319  				return ErrInvalidLengthGenesis
  3320  			}
  3321  			postIndex := iNdEx + msglen
  3322  			if postIndex < 0 {
  3323  				return ErrInvalidLengthGenesis
  3324  			}
  3325  			if postIndex > l {
  3326  				return io.ErrUnexpectedEOF
  3327  			}
  3328  			m.DerivativeOrderbook = append(m.DerivativeOrderbook, DerivativeOrderBook{})
  3329  			if err := m.DerivativeOrderbook[len(m.DerivativeOrderbook)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3330  				return err
  3331  			}
  3332  			iNdEx = postIndex
  3333  		case 6:
  3334  			if wireType != 2 {
  3335  				return fmt.Errorf("proto: wrong wireType = %d for field Balances", wireType)
  3336  			}
  3337  			var msglen int
  3338  			for shift := uint(0); ; shift += 7 {
  3339  				if shift >= 64 {
  3340  					return ErrIntOverflowGenesis
  3341  				}
  3342  				if iNdEx >= l {
  3343  					return io.ErrUnexpectedEOF
  3344  				}
  3345  				b := dAtA[iNdEx]
  3346  				iNdEx++
  3347  				msglen |= int(b&0x7F) << shift
  3348  				if b < 0x80 {
  3349  					break
  3350  				}
  3351  			}
  3352  			if msglen < 0 {
  3353  				return ErrInvalidLengthGenesis
  3354  			}
  3355  			postIndex := iNdEx + msglen
  3356  			if postIndex < 0 {
  3357  				return ErrInvalidLengthGenesis
  3358  			}
  3359  			if postIndex > l {
  3360  				return io.ErrUnexpectedEOF
  3361  			}
  3362  			m.Balances = append(m.Balances, Balance{})
  3363  			if err := m.Balances[len(m.Balances)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3364  				return err
  3365  			}
  3366  			iNdEx = postIndex
  3367  		case 7:
  3368  			if wireType != 2 {
  3369  				return fmt.Errorf("proto: wrong wireType = %d for field Positions", wireType)
  3370  			}
  3371  			var msglen int
  3372  			for shift := uint(0); ; shift += 7 {
  3373  				if shift >= 64 {
  3374  					return ErrIntOverflowGenesis
  3375  				}
  3376  				if iNdEx >= l {
  3377  					return io.ErrUnexpectedEOF
  3378  				}
  3379  				b := dAtA[iNdEx]
  3380  				iNdEx++
  3381  				msglen |= int(b&0x7F) << shift
  3382  				if b < 0x80 {
  3383  					break
  3384  				}
  3385  			}
  3386  			if msglen < 0 {
  3387  				return ErrInvalidLengthGenesis
  3388  			}
  3389  			postIndex := iNdEx + msglen
  3390  			if postIndex < 0 {
  3391  				return ErrInvalidLengthGenesis
  3392  			}
  3393  			if postIndex > l {
  3394  				return io.ErrUnexpectedEOF
  3395  			}
  3396  			m.Positions = append(m.Positions, DerivativePosition{})
  3397  			if err := m.Positions[len(m.Positions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3398  				return err
  3399  			}
  3400  			iNdEx = postIndex
  3401  		case 8:
  3402  			if wireType != 2 {
  3403  				return fmt.Errorf("proto: wrong wireType = %d for field SubaccountTradeNonces", wireType)
  3404  			}
  3405  			var msglen int
  3406  			for shift := uint(0); ; shift += 7 {
  3407  				if shift >= 64 {
  3408  					return ErrIntOverflowGenesis
  3409  				}
  3410  				if iNdEx >= l {
  3411  					return io.ErrUnexpectedEOF
  3412  				}
  3413  				b := dAtA[iNdEx]
  3414  				iNdEx++
  3415  				msglen |= int(b&0x7F) << shift
  3416  				if b < 0x80 {
  3417  					break
  3418  				}
  3419  			}
  3420  			if msglen < 0 {
  3421  				return ErrInvalidLengthGenesis
  3422  			}
  3423  			postIndex := iNdEx + msglen
  3424  			if postIndex < 0 {
  3425  				return ErrInvalidLengthGenesis
  3426  			}
  3427  			if postIndex > l {
  3428  				return io.ErrUnexpectedEOF
  3429  			}
  3430  			m.SubaccountTradeNonces = append(m.SubaccountTradeNonces, SubaccountNonce{})
  3431  			if err := m.SubaccountTradeNonces[len(m.SubaccountTradeNonces)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3432  				return err
  3433  			}
  3434  			iNdEx = postIndex
  3435  		case 9:
  3436  			if wireType != 2 {
  3437  				return fmt.Errorf("proto: wrong wireType = %d for field ExpiryFuturesMarketInfoState", wireType)
  3438  			}
  3439  			var msglen int
  3440  			for shift := uint(0); ; shift += 7 {
  3441  				if shift >= 64 {
  3442  					return ErrIntOverflowGenesis
  3443  				}
  3444  				if iNdEx >= l {
  3445  					return io.ErrUnexpectedEOF
  3446  				}
  3447  				b := dAtA[iNdEx]
  3448  				iNdEx++
  3449  				msglen |= int(b&0x7F) << shift
  3450  				if b < 0x80 {
  3451  					break
  3452  				}
  3453  			}
  3454  			if msglen < 0 {
  3455  				return ErrInvalidLengthGenesis
  3456  			}
  3457  			postIndex := iNdEx + msglen
  3458  			if postIndex < 0 {
  3459  				return ErrInvalidLengthGenesis
  3460  			}
  3461  			if postIndex > l {
  3462  				return io.ErrUnexpectedEOF
  3463  			}
  3464  			m.ExpiryFuturesMarketInfoState = append(m.ExpiryFuturesMarketInfoState, ExpiryFuturesMarketInfoState{})
  3465  			if err := m.ExpiryFuturesMarketInfoState[len(m.ExpiryFuturesMarketInfoState)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3466  				return err
  3467  			}
  3468  			iNdEx = postIndex
  3469  		case 10:
  3470  			if wireType != 2 {
  3471  				return fmt.Errorf("proto: wrong wireType = %d for field PerpetualMarketInfo", wireType)
  3472  			}
  3473  			var msglen int
  3474  			for shift := uint(0); ; shift += 7 {
  3475  				if shift >= 64 {
  3476  					return ErrIntOverflowGenesis
  3477  				}
  3478  				if iNdEx >= l {
  3479  					return io.ErrUnexpectedEOF
  3480  				}
  3481  				b := dAtA[iNdEx]
  3482  				iNdEx++
  3483  				msglen |= int(b&0x7F) << shift
  3484  				if b < 0x80 {
  3485  					break
  3486  				}
  3487  			}
  3488  			if msglen < 0 {
  3489  				return ErrInvalidLengthGenesis
  3490  			}
  3491  			postIndex := iNdEx + msglen
  3492  			if postIndex < 0 {
  3493  				return ErrInvalidLengthGenesis
  3494  			}
  3495  			if postIndex > l {
  3496  				return io.ErrUnexpectedEOF
  3497  			}
  3498  			m.PerpetualMarketInfo = append(m.PerpetualMarketInfo, PerpetualMarketInfo{})
  3499  			if err := m.PerpetualMarketInfo[len(m.PerpetualMarketInfo)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3500  				return err
  3501  			}
  3502  			iNdEx = postIndex
  3503  		case 11:
  3504  			if wireType != 2 {
  3505  				return fmt.Errorf("proto: wrong wireType = %d for field PerpetualMarketFundingState", wireType)
  3506  			}
  3507  			var msglen int
  3508  			for shift := uint(0); ; shift += 7 {
  3509  				if shift >= 64 {
  3510  					return ErrIntOverflowGenesis
  3511  				}
  3512  				if iNdEx >= l {
  3513  					return io.ErrUnexpectedEOF
  3514  				}
  3515  				b := dAtA[iNdEx]
  3516  				iNdEx++
  3517  				msglen |= int(b&0x7F) << shift
  3518  				if b < 0x80 {
  3519  					break
  3520  				}
  3521  			}
  3522  			if msglen < 0 {
  3523  				return ErrInvalidLengthGenesis
  3524  			}
  3525  			postIndex := iNdEx + msglen
  3526  			if postIndex < 0 {
  3527  				return ErrInvalidLengthGenesis
  3528  			}
  3529  			if postIndex > l {
  3530  				return io.ErrUnexpectedEOF
  3531  			}
  3532  			m.PerpetualMarketFundingState = append(m.PerpetualMarketFundingState, PerpetualMarketFundingState{})
  3533  			if err := m.PerpetualMarketFundingState[len(m.PerpetualMarketFundingState)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3534  				return err
  3535  			}
  3536  			iNdEx = postIndex
  3537  		case 12:
  3538  			if wireType != 2 {
  3539  				return fmt.Errorf("proto: wrong wireType = %d for field DerivativeMarketSettlementScheduled", wireType)
  3540  			}
  3541  			var msglen int
  3542  			for shift := uint(0); ; shift += 7 {
  3543  				if shift >= 64 {
  3544  					return ErrIntOverflowGenesis
  3545  				}
  3546  				if iNdEx >= l {
  3547  					return io.ErrUnexpectedEOF
  3548  				}
  3549  				b := dAtA[iNdEx]
  3550  				iNdEx++
  3551  				msglen |= int(b&0x7F) << shift
  3552  				if b < 0x80 {
  3553  					break
  3554  				}
  3555  			}
  3556  			if msglen < 0 {
  3557  				return ErrInvalidLengthGenesis
  3558  			}
  3559  			postIndex := iNdEx + msglen
  3560  			if postIndex < 0 {
  3561  				return ErrInvalidLengthGenesis
  3562  			}
  3563  			if postIndex > l {
  3564  				return io.ErrUnexpectedEOF
  3565  			}
  3566  			m.DerivativeMarketSettlementScheduled = append(m.DerivativeMarketSettlementScheduled, DerivativeMarketSettlementInfo{})
  3567  			if err := m.DerivativeMarketSettlementScheduled[len(m.DerivativeMarketSettlementScheduled)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3568  				return err
  3569  			}
  3570  			iNdEx = postIndex
  3571  		case 13:
  3572  			if wireType != 0 {
  3573  				return fmt.Errorf("proto: wrong wireType = %d for field IsSpotExchangeEnabled", wireType)
  3574  			}
  3575  			var v int
  3576  			for shift := uint(0); ; shift += 7 {
  3577  				if shift >= 64 {
  3578  					return ErrIntOverflowGenesis
  3579  				}
  3580  				if iNdEx >= l {
  3581  					return io.ErrUnexpectedEOF
  3582  				}
  3583  				b := dAtA[iNdEx]
  3584  				iNdEx++
  3585  				v |= int(b&0x7F) << shift
  3586  				if b < 0x80 {
  3587  					break
  3588  				}
  3589  			}
  3590  			m.IsSpotExchangeEnabled = bool(v != 0)
  3591  		case 14:
  3592  			if wireType != 0 {
  3593  				return fmt.Errorf("proto: wrong wireType = %d for field IsDerivativesExchangeEnabled", wireType)
  3594  			}
  3595  			var v int
  3596  			for shift := uint(0); ; shift += 7 {
  3597  				if shift >= 64 {
  3598  					return ErrIntOverflowGenesis
  3599  				}
  3600  				if iNdEx >= l {
  3601  					return io.ErrUnexpectedEOF
  3602  				}
  3603  				b := dAtA[iNdEx]
  3604  				iNdEx++
  3605  				v |= int(b&0x7F) << shift
  3606  				if b < 0x80 {
  3607  					break
  3608  				}
  3609  			}
  3610  			m.IsDerivativesExchangeEnabled = bool(v != 0)
  3611  		case 15:
  3612  			if wireType != 2 {
  3613  				return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardCampaignInfo", wireType)
  3614  			}
  3615  			var msglen int
  3616  			for shift := uint(0); ; shift += 7 {
  3617  				if shift >= 64 {
  3618  					return ErrIntOverflowGenesis
  3619  				}
  3620  				if iNdEx >= l {
  3621  					return io.ErrUnexpectedEOF
  3622  				}
  3623  				b := dAtA[iNdEx]
  3624  				iNdEx++
  3625  				msglen |= int(b&0x7F) << shift
  3626  				if b < 0x80 {
  3627  					break
  3628  				}
  3629  			}
  3630  			if msglen < 0 {
  3631  				return ErrInvalidLengthGenesis
  3632  			}
  3633  			postIndex := iNdEx + msglen
  3634  			if postIndex < 0 {
  3635  				return ErrInvalidLengthGenesis
  3636  			}
  3637  			if postIndex > l {
  3638  				return io.ErrUnexpectedEOF
  3639  			}
  3640  			if m.TradingRewardCampaignInfo == nil {
  3641  				m.TradingRewardCampaignInfo = &TradingRewardCampaignInfo{}
  3642  			}
  3643  			if err := m.TradingRewardCampaignInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3644  				return err
  3645  			}
  3646  			iNdEx = postIndex
  3647  		case 16:
  3648  			if wireType != 2 {
  3649  				return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardPoolCampaignSchedule", wireType)
  3650  			}
  3651  			var msglen int
  3652  			for shift := uint(0); ; shift += 7 {
  3653  				if shift >= 64 {
  3654  					return ErrIntOverflowGenesis
  3655  				}
  3656  				if iNdEx >= l {
  3657  					return io.ErrUnexpectedEOF
  3658  				}
  3659  				b := dAtA[iNdEx]
  3660  				iNdEx++
  3661  				msglen |= int(b&0x7F) << shift
  3662  				if b < 0x80 {
  3663  					break
  3664  				}
  3665  			}
  3666  			if msglen < 0 {
  3667  				return ErrInvalidLengthGenesis
  3668  			}
  3669  			postIndex := iNdEx + msglen
  3670  			if postIndex < 0 {
  3671  				return ErrInvalidLengthGenesis
  3672  			}
  3673  			if postIndex > l {
  3674  				return io.ErrUnexpectedEOF
  3675  			}
  3676  			m.TradingRewardPoolCampaignSchedule = append(m.TradingRewardPoolCampaignSchedule, &CampaignRewardPool{})
  3677  			if err := m.TradingRewardPoolCampaignSchedule[len(m.TradingRewardPoolCampaignSchedule)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3678  				return err
  3679  			}
  3680  			iNdEx = postIndex
  3681  		case 17:
  3682  			if wireType != 2 {
  3683  				return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardCampaignAccountPoints", wireType)
  3684  			}
  3685  			var msglen int
  3686  			for shift := uint(0); ; shift += 7 {
  3687  				if shift >= 64 {
  3688  					return ErrIntOverflowGenesis
  3689  				}
  3690  				if iNdEx >= l {
  3691  					return io.ErrUnexpectedEOF
  3692  				}
  3693  				b := dAtA[iNdEx]
  3694  				iNdEx++
  3695  				msglen |= int(b&0x7F) << shift
  3696  				if b < 0x80 {
  3697  					break
  3698  				}
  3699  			}
  3700  			if msglen < 0 {
  3701  				return ErrInvalidLengthGenesis
  3702  			}
  3703  			postIndex := iNdEx + msglen
  3704  			if postIndex < 0 {
  3705  				return ErrInvalidLengthGenesis
  3706  			}
  3707  			if postIndex > l {
  3708  				return io.ErrUnexpectedEOF
  3709  			}
  3710  			m.TradingRewardCampaignAccountPoints = append(m.TradingRewardCampaignAccountPoints, &TradingRewardCampaignAccountPoints{})
  3711  			if err := m.TradingRewardCampaignAccountPoints[len(m.TradingRewardCampaignAccountPoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3712  				return err
  3713  			}
  3714  			iNdEx = postIndex
  3715  		case 18:
  3716  			if wireType != 2 {
  3717  				return fmt.Errorf("proto: wrong wireType = %d for field FeeDiscountSchedule", wireType)
  3718  			}
  3719  			var msglen int
  3720  			for shift := uint(0); ; shift += 7 {
  3721  				if shift >= 64 {
  3722  					return ErrIntOverflowGenesis
  3723  				}
  3724  				if iNdEx >= l {
  3725  					return io.ErrUnexpectedEOF
  3726  				}
  3727  				b := dAtA[iNdEx]
  3728  				iNdEx++
  3729  				msglen |= int(b&0x7F) << shift
  3730  				if b < 0x80 {
  3731  					break
  3732  				}
  3733  			}
  3734  			if msglen < 0 {
  3735  				return ErrInvalidLengthGenesis
  3736  			}
  3737  			postIndex := iNdEx + msglen
  3738  			if postIndex < 0 {
  3739  				return ErrInvalidLengthGenesis
  3740  			}
  3741  			if postIndex > l {
  3742  				return io.ErrUnexpectedEOF
  3743  			}
  3744  			if m.FeeDiscountSchedule == nil {
  3745  				m.FeeDiscountSchedule = &FeeDiscountSchedule{}
  3746  			}
  3747  			if err := m.FeeDiscountSchedule.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3748  				return err
  3749  			}
  3750  			iNdEx = postIndex
  3751  		case 19:
  3752  			if wireType != 2 {
  3753  				return fmt.Errorf("proto: wrong wireType = %d for field FeeDiscountAccountTierTtl", wireType)
  3754  			}
  3755  			var msglen int
  3756  			for shift := uint(0); ; shift += 7 {
  3757  				if shift >= 64 {
  3758  					return ErrIntOverflowGenesis
  3759  				}
  3760  				if iNdEx >= l {
  3761  					return io.ErrUnexpectedEOF
  3762  				}
  3763  				b := dAtA[iNdEx]
  3764  				iNdEx++
  3765  				msglen |= int(b&0x7F) << shift
  3766  				if b < 0x80 {
  3767  					break
  3768  				}
  3769  			}
  3770  			if msglen < 0 {
  3771  				return ErrInvalidLengthGenesis
  3772  			}
  3773  			postIndex := iNdEx + msglen
  3774  			if postIndex < 0 {
  3775  				return ErrInvalidLengthGenesis
  3776  			}
  3777  			if postIndex > l {
  3778  				return io.ErrUnexpectedEOF
  3779  			}
  3780  			m.FeeDiscountAccountTierTtl = append(m.FeeDiscountAccountTierTtl, &FeeDiscountAccountTierTTL{})
  3781  			if err := m.FeeDiscountAccountTierTtl[len(m.FeeDiscountAccountTierTtl)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3782  				return err
  3783  			}
  3784  			iNdEx = postIndex
  3785  		case 20:
  3786  			if wireType != 2 {
  3787  				return fmt.Errorf("proto: wrong wireType = %d for field FeeDiscountBucketVolumeAccounts", wireType)
  3788  			}
  3789  			var msglen int
  3790  			for shift := uint(0); ; shift += 7 {
  3791  				if shift >= 64 {
  3792  					return ErrIntOverflowGenesis
  3793  				}
  3794  				if iNdEx >= l {
  3795  					return io.ErrUnexpectedEOF
  3796  				}
  3797  				b := dAtA[iNdEx]
  3798  				iNdEx++
  3799  				msglen |= int(b&0x7F) << shift
  3800  				if b < 0x80 {
  3801  					break
  3802  				}
  3803  			}
  3804  			if msglen < 0 {
  3805  				return ErrInvalidLengthGenesis
  3806  			}
  3807  			postIndex := iNdEx + msglen
  3808  			if postIndex < 0 {
  3809  				return ErrInvalidLengthGenesis
  3810  			}
  3811  			if postIndex > l {
  3812  				return io.ErrUnexpectedEOF
  3813  			}
  3814  			m.FeeDiscountBucketVolumeAccounts = append(m.FeeDiscountBucketVolumeAccounts, &FeeDiscountBucketVolumeAccounts{})
  3815  			if err := m.FeeDiscountBucketVolumeAccounts[len(m.FeeDiscountBucketVolumeAccounts)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3816  				return err
  3817  			}
  3818  			iNdEx = postIndex
  3819  		case 21:
  3820  			if wireType != 0 {
  3821  				return fmt.Errorf("proto: wrong wireType = %d for field IsFirstFeeCycleFinished", wireType)
  3822  			}
  3823  			var v int
  3824  			for shift := uint(0); ; shift += 7 {
  3825  				if shift >= 64 {
  3826  					return ErrIntOverflowGenesis
  3827  				}
  3828  				if iNdEx >= l {
  3829  					return io.ErrUnexpectedEOF
  3830  				}
  3831  				b := dAtA[iNdEx]
  3832  				iNdEx++
  3833  				v |= int(b&0x7F) << shift
  3834  				if b < 0x80 {
  3835  					break
  3836  				}
  3837  			}
  3838  			m.IsFirstFeeCycleFinished = bool(v != 0)
  3839  		case 22:
  3840  			if wireType != 2 {
  3841  				return fmt.Errorf("proto: wrong wireType = %d for field PendingTradingRewardPoolCampaignSchedule", wireType)
  3842  			}
  3843  			var msglen int
  3844  			for shift := uint(0); ; shift += 7 {
  3845  				if shift >= 64 {
  3846  					return ErrIntOverflowGenesis
  3847  				}
  3848  				if iNdEx >= l {
  3849  					return io.ErrUnexpectedEOF
  3850  				}
  3851  				b := dAtA[iNdEx]
  3852  				iNdEx++
  3853  				msglen |= int(b&0x7F) << shift
  3854  				if b < 0x80 {
  3855  					break
  3856  				}
  3857  			}
  3858  			if msglen < 0 {
  3859  				return ErrInvalidLengthGenesis
  3860  			}
  3861  			postIndex := iNdEx + msglen
  3862  			if postIndex < 0 {
  3863  				return ErrInvalidLengthGenesis
  3864  			}
  3865  			if postIndex > l {
  3866  				return io.ErrUnexpectedEOF
  3867  			}
  3868  			m.PendingTradingRewardPoolCampaignSchedule = append(m.PendingTradingRewardPoolCampaignSchedule, &CampaignRewardPool{})
  3869  			if err := m.PendingTradingRewardPoolCampaignSchedule[len(m.PendingTradingRewardPoolCampaignSchedule)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3870  				return err
  3871  			}
  3872  			iNdEx = postIndex
  3873  		case 23:
  3874  			if wireType != 2 {
  3875  				return fmt.Errorf("proto: wrong wireType = %d for field PendingTradingRewardCampaignAccountPoints", wireType)
  3876  			}
  3877  			var msglen int
  3878  			for shift := uint(0); ; shift += 7 {
  3879  				if shift >= 64 {
  3880  					return ErrIntOverflowGenesis
  3881  				}
  3882  				if iNdEx >= l {
  3883  					return io.ErrUnexpectedEOF
  3884  				}
  3885  				b := dAtA[iNdEx]
  3886  				iNdEx++
  3887  				msglen |= int(b&0x7F) << shift
  3888  				if b < 0x80 {
  3889  					break
  3890  				}
  3891  			}
  3892  			if msglen < 0 {
  3893  				return ErrInvalidLengthGenesis
  3894  			}
  3895  			postIndex := iNdEx + msglen
  3896  			if postIndex < 0 {
  3897  				return ErrInvalidLengthGenesis
  3898  			}
  3899  			if postIndex > l {
  3900  				return io.ErrUnexpectedEOF
  3901  			}
  3902  			m.PendingTradingRewardCampaignAccountPoints = append(m.PendingTradingRewardCampaignAccountPoints, &TradingRewardCampaignAccountPendingPoints{})
  3903  			if err := m.PendingTradingRewardCampaignAccountPoints[len(m.PendingTradingRewardCampaignAccountPoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3904  				return err
  3905  			}
  3906  			iNdEx = postIndex
  3907  		case 24:
  3908  			if wireType != 2 {
  3909  				return fmt.Errorf("proto: wrong wireType = %d for field RewardsOptOutAddresses", wireType)
  3910  			}
  3911  			var stringLen uint64
  3912  			for shift := uint(0); ; shift += 7 {
  3913  				if shift >= 64 {
  3914  					return ErrIntOverflowGenesis
  3915  				}
  3916  				if iNdEx >= l {
  3917  					return io.ErrUnexpectedEOF
  3918  				}
  3919  				b := dAtA[iNdEx]
  3920  				iNdEx++
  3921  				stringLen |= uint64(b&0x7F) << shift
  3922  				if b < 0x80 {
  3923  					break
  3924  				}
  3925  			}
  3926  			intStringLen := int(stringLen)
  3927  			if intStringLen < 0 {
  3928  				return ErrInvalidLengthGenesis
  3929  			}
  3930  			postIndex := iNdEx + intStringLen
  3931  			if postIndex < 0 {
  3932  				return ErrInvalidLengthGenesis
  3933  			}
  3934  			if postIndex > l {
  3935  				return io.ErrUnexpectedEOF
  3936  			}
  3937  			m.RewardsOptOutAddresses = append(m.RewardsOptOutAddresses, string(dAtA[iNdEx:postIndex]))
  3938  			iNdEx = postIndex
  3939  		case 25:
  3940  			if wireType != 2 {
  3941  				return fmt.Errorf("proto: wrong wireType = %d for field HistoricalTradeRecords", wireType)
  3942  			}
  3943  			var msglen int
  3944  			for shift := uint(0); ; shift += 7 {
  3945  				if shift >= 64 {
  3946  					return ErrIntOverflowGenesis
  3947  				}
  3948  				if iNdEx >= l {
  3949  					return io.ErrUnexpectedEOF
  3950  				}
  3951  				b := dAtA[iNdEx]
  3952  				iNdEx++
  3953  				msglen |= int(b&0x7F) << shift
  3954  				if b < 0x80 {
  3955  					break
  3956  				}
  3957  			}
  3958  			if msglen < 0 {
  3959  				return ErrInvalidLengthGenesis
  3960  			}
  3961  			postIndex := iNdEx + msglen
  3962  			if postIndex < 0 {
  3963  				return ErrInvalidLengthGenesis
  3964  			}
  3965  			if postIndex > l {
  3966  				return io.ErrUnexpectedEOF
  3967  			}
  3968  			m.HistoricalTradeRecords = append(m.HistoricalTradeRecords, &TradeRecords{})
  3969  			if err := m.HistoricalTradeRecords[len(m.HistoricalTradeRecords)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3970  				return err
  3971  			}
  3972  			iNdEx = postIndex
  3973  		case 26:
  3974  			if wireType != 2 {
  3975  				return fmt.Errorf("proto: wrong wireType = %d for field BinaryOptionsMarkets", wireType)
  3976  			}
  3977  			var msglen int
  3978  			for shift := uint(0); ; shift += 7 {
  3979  				if shift >= 64 {
  3980  					return ErrIntOverflowGenesis
  3981  				}
  3982  				if iNdEx >= l {
  3983  					return io.ErrUnexpectedEOF
  3984  				}
  3985  				b := dAtA[iNdEx]
  3986  				iNdEx++
  3987  				msglen |= int(b&0x7F) << shift
  3988  				if b < 0x80 {
  3989  					break
  3990  				}
  3991  			}
  3992  			if msglen < 0 {
  3993  				return ErrInvalidLengthGenesis
  3994  			}
  3995  			postIndex := iNdEx + msglen
  3996  			if postIndex < 0 {
  3997  				return ErrInvalidLengthGenesis
  3998  			}
  3999  			if postIndex > l {
  4000  				return io.ErrUnexpectedEOF
  4001  			}
  4002  			m.BinaryOptionsMarkets = append(m.BinaryOptionsMarkets, &BinaryOptionsMarket{})
  4003  			if err := m.BinaryOptionsMarkets[len(m.BinaryOptionsMarkets)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4004  				return err
  4005  			}
  4006  			iNdEx = postIndex
  4007  		case 27:
  4008  			if wireType != 2 {
  4009  				return fmt.Errorf("proto: wrong wireType = %d for field BinaryOptionsMarketIdsScheduledForSettlement", wireType)
  4010  			}
  4011  			var stringLen uint64
  4012  			for shift := uint(0); ; shift += 7 {
  4013  				if shift >= 64 {
  4014  					return ErrIntOverflowGenesis
  4015  				}
  4016  				if iNdEx >= l {
  4017  					return io.ErrUnexpectedEOF
  4018  				}
  4019  				b := dAtA[iNdEx]
  4020  				iNdEx++
  4021  				stringLen |= uint64(b&0x7F) << shift
  4022  				if b < 0x80 {
  4023  					break
  4024  				}
  4025  			}
  4026  			intStringLen := int(stringLen)
  4027  			if intStringLen < 0 {
  4028  				return ErrInvalidLengthGenesis
  4029  			}
  4030  			postIndex := iNdEx + intStringLen
  4031  			if postIndex < 0 {
  4032  				return ErrInvalidLengthGenesis
  4033  			}
  4034  			if postIndex > l {
  4035  				return io.ErrUnexpectedEOF
  4036  			}
  4037  			m.BinaryOptionsMarketIdsScheduledForSettlement = append(m.BinaryOptionsMarketIdsScheduledForSettlement, string(dAtA[iNdEx:postIndex]))
  4038  			iNdEx = postIndex
  4039  		case 28:
  4040  			if wireType != 2 {
  4041  				return fmt.Errorf("proto: wrong wireType = %d for field SpotMarketIdsScheduledToForceClose", wireType)
  4042  			}
  4043  			var stringLen uint64
  4044  			for shift := uint(0); ; shift += 7 {
  4045  				if shift >= 64 {
  4046  					return ErrIntOverflowGenesis
  4047  				}
  4048  				if iNdEx >= l {
  4049  					return io.ErrUnexpectedEOF
  4050  				}
  4051  				b := dAtA[iNdEx]
  4052  				iNdEx++
  4053  				stringLen |= uint64(b&0x7F) << shift
  4054  				if b < 0x80 {
  4055  					break
  4056  				}
  4057  			}
  4058  			intStringLen := int(stringLen)
  4059  			if intStringLen < 0 {
  4060  				return ErrInvalidLengthGenesis
  4061  			}
  4062  			postIndex := iNdEx + intStringLen
  4063  			if postIndex < 0 {
  4064  				return ErrInvalidLengthGenesis
  4065  			}
  4066  			if postIndex > l {
  4067  				return io.ErrUnexpectedEOF
  4068  			}
  4069  			m.SpotMarketIdsScheduledToForceClose = append(m.SpotMarketIdsScheduledToForceClose, string(dAtA[iNdEx:postIndex]))
  4070  			iNdEx = postIndex
  4071  		case 29:
  4072  			if wireType != 2 {
  4073  				return fmt.Errorf("proto: wrong wireType = %d for field DenomDecimals", wireType)
  4074  			}
  4075  			var msglen int
  4076  			for shift := uint(0); ; shift += 7 {
  4077  				if shift >= 64 {
  4078  					return ErrIntOverflowGenesis
  4079  				}
  4080  				if iNdEx >= l {
  4081  					return io.ErrUnexpectedEOF
  4082  				}
  4083  				b := dAtA[iNdEx]
  4084  				iNdEx++
  4085  				msglen |= int(b&0x7F) << shift
  4086  				if b < 0x80 {
  4087  					break
  4088  				}
  4089  			}
  4090  			if msglen < 0 {
  4091  				return ErrInvalidLengthGenesis
  4092  			}
  4093  			postIndex := iNdEx + msglen
  4094  			if postIndex < 0 {
  4095  				return ErrInvalidLengthGenesis
  4096  			}
  4097  			if postIndex > l {
  4098  				return io.ErrUnexpectedEOF
  4099  			}
  4100  			m.DenomDecimals = append(m.DenomDecimals, DenomDecimals{})
  4101  			if err := m.DenomDecimals[len(m.DenomDecimals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4102  				return err
  4103  			}
  4104  			iNdEx = postIndex
  4105  		case 30:
  4106  			if wireType != 2 {
  4107  				return fmt.Errorf("proto: wrong wireType = %d for field ConditionalDerivativeOrderbooks", wireType)
  4108  			}
  4109  			var msglen int
  4110  			for shift := uint(0); ; shift += 7 {
  4111  				if shift >= 64 {
  4112  					return ErrIntOverflowGenesis
  4113  				}
  4114  				if iNdEx >= l {
  4115  					return io.ErrUnexpectedEOF
  4116  				}
  4117  				b := dAtA[iNdEx]
  4118  				iNdEx++
  4119  				msglen |= int(b&0x7F) << shift
  4120  				if b < 0x80 {
  4121  					break
  4122  				}
  4123  			}
  4124  			if msglen < 0 {
  4125  				return ErrInvalidLengthGenesis
  4126  			}
  4127  			postIndex := iNdEx + msglen
  4128  			if postIndex < 0 {
  4129  				return ErrInvalidLengthGenesis
  4130  			}
  4131  			if postIndex > l {
  4132  				return io.ErrUnexpectedEOF
  4133  			}
  4134  			m.ConditionalDerivativeOrderbooks = append(m.ConditionalDerivativeOrderbooks, &ConditionalDerivativeOrderBook{})
  4135  			if err := m.ConditionalDerivativeOrderbooks[len(m.ConditionalDerivativeOrderbooks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4136  				return err
  4137  			}
  4138  			iNdEx = postIndex
  4139  		case 31:
  4140  			if wireType != 2 {
  4141  				return fmt.Errorf("proto: wrong wireType = %d for field MarketFeeMultipliers", wireType)
  4142  			}
  4143  			var msglen int
  4144  			for shift := uint(0); ; shift += 7 {
  4145  				if shift >= 64 {
  4146  					return ErrIntOverflowGenesis
  4147  				}
  4148  				if iNdEx >= l {
  4149  					return io.ErrUnexpectedEOF
  4150  				}
  4151  				b := dAtA[iNdEx]
  4152  				iNdEx++
  4153  				msglen |= int(b&0x7F) << shift
  4154  				if b < 0x80 {
  4155  					break
  4156  				}
  4157  			}
  4158  			if msglen < 0 {
  4159  				return ErrInvalidLengthGenesis
  4160  			}
  4161  			postIndex := iNdEx + msglen
  4162  			if postIndex < 0 {
  4163  				return ErrInvalidLengthGenesis
  4164  			}
  4165  			if postIndex > l {
  4166  				return io.ErrUnexpectedEOF
  4167  			}
  4168  			m.MarketFeeMultipliers = append(m.MarketFeeMultipliers, &MarketFeeMultiplier{})
  4169  			if err := m.MarketFeeMultipliers[len(m.MarketFeeMultipliers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4170  				return err
  4171  			}
  4172  			iNdEx = postIndex
  4173  		case 32:
  4174  			if wireType != 2 {
  4175  				return fmt.Errorf("proto: wrong wireType = %d for field OrderbookSequences", wireType)
  4176  			}
  4177  			var msglen int
  4178  			for shift := uint(0); ; shift += 7 {
  4179  				if shift >= 64 {
  4180  					return ErrIntOverflowGenesis
  4181  				}
  4182  				if iNdEx >= l {
  4183  					return io.ErrUnexpectedEOF
  4184  				}
  4185  				b := dAtA[iNdEx]
  4186  				iNdEx++
  4187  				msglen |= int(b&0x7F) << shift
  4188  				if b < 0x80 {
  4189  					break
  4190  				}
  4191  			}
  4192  			if msglen < 0 {
  4193  				return ErrInvalidLengthGenesis
  4194  			}
  4195  			postIndex := iNdEx + msglen
  4196  			if postIndex < 0 {
  4197  				return ErrInvalidLengthGenesis
  4198  			}
  4199  			if postIndex > l {
  4200  				return io.ErrUnexpectedEOF
  4201  			}
  4202  			m.OrderbookSequences = append(m.OrderbookSequences, &OrderbookSequence{})
  4203  			if err := m.OrderbookSequences[len(m.OrderbookSequences)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4204  				return err
  4205  			}
  4206  			iNdEx = postIndex
  4207  		case 33:
  4208  			if wireType != 2 {
  4209  				return fmt.Errorf("proto: wrong wireType = %d for field SubaccountVolumes", wireType)
  4210  			}
  4211  			var msglen int
  4212  			for shift := uint(0); ; shift += 7 {
  4213  				if shift >= 64 {
  4214  					return ErrIntOverflowGenesis
  4215  				}
  4216  				if iNdEx >= l {
  4217  					return io.ErrUnexpectedEOF
  4218  				}
  4219  				b := dAtA[iNdEx]
  4220  				iNdEx++
  4221  				msglen |= int(b&0x7F) << shift
  4222  				if b < 0x80 {
  4223  					break
  4224  				}
  4225  			}
  4226  			if msglen < 0 {
  4227  				return ErrInvalidLengthGenesis
  4228  			}
  4229  			postIndex := iNdEx + msglen
  4230  			if postIndex < 0 {
  4231  				return ErrInvalidLengthGenesis
  4232  			}
  4233  			if postIndex > l {
  4234  				return io.ErrUnexpectedEOF
  4235  			}
  4236  			m.SubaccountVolumes = append(m.SubaccountVolumes, &AggregateSubaccountVolumeRecord{})
  4237  			if err := m.SubaccountVolumes[len(m.SubaccountVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4238  				return err
  4239  			}
  4240  			iNdEx = postIndex
  4241  		case 34:
  4242  			if wireType != 2 {
  4243  				return fmt.Errorf("proto: wrong wireType = %d for field MarketVolumes", wireType)
  4244  			}
  4245  			var msglen int
  4246  			for shift := uint(0); ; shift += 7 {
  4247  				if shift >= 64 {
  4248  					return ErrIntOverflowGenesis
  4249  				}
  4250  				if iNdEx >= l {
  4251  					return io.ErrUnexpectedEOF
  4252  				}
  4253  				b := dAtA[iNdEx]
  4254  				iNdEx++
  4255  				msglen |= int(b&0x7F) << shift
  4256  				if b < 0x80 {
  4257  					break
  4258  				}
  4259  			}
  4260  			if msglen < 0 {
  4261  				return ErrInvalidLengthGenesis
  4262  			}
  4263  			postIndex := iNdEx + msglen
  4264  			if postIndex < 0 {
  4265  				return ErrInvalidLengthGenesis
  4266  			}
  4267  			if postIndex > l {
  4268  				return io.ErrUnexpectedEOF
  4269  			}
  4270  			m.MarketVolumes = append(m.MarketVolumes, &MarketVolume{})
  4271  			if err := m.MarketVolumes[len(m.MarketVolumes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4272  				return err
  4273  			}
  4274  			iNdEx = postIndex
  4275  		case 35:
  4276  			if wireType != 2 {
  4277  				return fmt.Errorf("proto: wrong wireType = %d for field GrantAuthorizations", wireType)
  4278  			}
  4279  			var msglen int
  4280  			for shift := uint(0); ; shift += 7 {
  4281  				if shift >= 64 {
  4282  					return ErrIntOverflowGenesis
  4283  				}
  4284  				if iNdEx >= l {
  4285  					return io.ErrUnexpectedEOF
  4286  				}
  4287  				b := dAtA[iNdEx]
  4288  				iNdEx++
  4289  				msglen |= int(b&0x7F) << shift
  4290  				if b < 0x80 {
  4291  					break
  4292  				}
  4293  			}
  4294  			if msglen < 0 {
  4295  				return ErrInvalidLengthGenesis
  4296  			}
  4297  			postIndex := iNdEx + msglen
  4298  			if postIndex < 0 {
  4299  				return ErrInvalidLengthGenesis
  4300  			}
  4301  			if postIndex > l {
  4302  				return io.ErrUnexpectedEOF
  4303  			}
  4304  			m.GrantAuthorizations = append(m.GrantAuthorizations, &FullGrantAuthorizations{})
  4305  			if err := m.GrantAuthorizations[len(m.GrantAuthorizations)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4306  				return err
  4307  			}
  4308  			iNdEx = postIndex
  4309  		case 36:
  4310  			if wireType != 2 {
  4311  				return fmt.Errorf("proto: wrong wireType = %d for field ActiveGrants", wireType)
  4312  			}
  4313  			var msglen int
  4314  			for shift := uint(0); ; shift += 7 {
  4315  				if shift >= 64 {
  4316  					return ErrIntOverflowGenesis
  4317  				}
  4318  				if iNdEx >= l {
  4319  					return io.ErrUnexpectedEOF
  4320  				}
  4321  				b := dAtA[iNdEx]
  4322  				iNdEx++
  4323  				msglen |= int(b&0x7F) << shift
  4324  				if b < 0x80 {
  4325  					break
  4326  				}
  4327  			}
  4328  			if msglen < 0 {
  4329  				return ErrInvalidLengthGenesis
  4330  			}
  4331  			postIndex := iNdEx + msglen
  4332  			if postIndex < 0 {
  4333  				return ErrInvalidLengthGenesis
  4334  			}
  4335  			if postIndex > l {
  4336  				return io.ErrUnexpectedEOF
  4337  			}
  4338  			m.ActiveGrants = append(m.ActiveGrants, &FullActiveGrant{})
  4339  			if err := m.ActiveGrants[len(m.ActiveGrants)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4340  				return err
  4341  			}
  4342  			iNdEx = postIndex
  4343  		default:
  4344  			iNdEx = preIndex
  4345  			skippy, err := skipGenesis(dAtA[iNdEx:])
  4346  			if err != nil {
  4347  				return err
  4348  			}
  4349  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4350  				return ErrInvalidLengthGenesis
  4351  			}
  4352  			if (iNdEx + skippy) > l {
  4353  				return io.ErrUnexpectedEOF
  4354  			}
  4355  			iNdEx += skippy
  4356  		}
  4357  	}
  4358  
  4359  	if iNdEx > l {
  4360  		return io.ErrUnexpectedEOF
  4361  	}
  4362  	return nil
  4363  }
  4364  func (m *OrderbookSequence) Unmarshal(dAtA []byte) error {
  4365  	l := len(dAtA)
  4366  	iNdEx := 0
  4367  	for iNdEx < l {
  4368  		preIndex := iNdEx
  4369  		var wire uint64
  4370  		for shift := uint(0); ; shift += 7 {
  4371  			if shift >= 64 {
  4372  				return ErrIntOverflowGenesis
  4373  			}
  4374  			if iNdEx >= l {
  4375  				return io.ErrUnexpectedEOF
  4376  			}
  4377  			b := dAtA[iNdEx]
  4378  			iNdEx++
  4379  			wire |= uint64(b&0x7F) << shift
  4380  			if b < 0x80 {
  4381  				break
  4382  			}
  4383  		}
  4384  		fieldNum := int32(wire >> 3)
  4385  		wireType := int(wire & 0x7)
  4386  		if wireType == 4 {
  4387  			return fmt.Errorf("proto: OrderbookSequence: wiretype end group for non-group")
  4388  		}
  4389  		if fieldNum <= 0 {
  4390  			return fmt.Errorf("proto: OrderbookSequence: illegal tag %d (wire type %d)", fieldNum, wire)
  4391  		}
  4392  		switch fieldNum {
  4393  		case 1:
  4394  			if wireType != 0 {
  4395  				return fmt.Errorf("proto: wrong wireType = %d for field Sequence", wireType)
  4396  			}
  4397  			m.Sequence = 0
  4398  			for shift := uint(0); ; shift += 7 {
  4399  				if shift >= 64 {
  4400  					return ErrIntOverflowGenesis
  4401  				}
  4402  				if iNdEx >= l {
  4403  					return io.ErrUnexpectedEOF
  4404  				}
  4405  				b := dAtA[iNdEx]
  4406  				iNdEx++
  4407  				m.Sequence |= uint64(b&0x7F) << shift
  4408  				if b < 0x80 {
  4409  					break
  4410  				}
  4411  			}
  4412  		case 2:
  4413  			if wireType != 2 {
  4414  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  4415  			}
  4416  			var stringLen uint64
  4417  			for shift := uint(0); ; shift += 7 {
  4418  				if shift >= 64 {
  4419  					return ErrIntOverflowGenesis
  4420  				}
  4421  				if iNdEx >= l {
  4422  					return io.ErrUnexpectedEOF
  4423  				}
  4424  				b := dAtA[iNdEx]
  4425  				iNdEx++
  4426  				stringLen |= uint64(b&0x7F) << shift
  4427  				if b < 0x80 {
  4428  					break
  4429  				}
  4430  			}
  4431  			intStringLen := int(stringLen)
  4432  			if intStringLen < 0 {
  4433  				return ErrInvalidLengthGenesis
  4434  			}
  4435  			postIndex := iNdEx + intStringLen
  4436  			if postIndex < 0 {
  4437  				return ErrInvalidLengthGenesis
  4438  			}
  4439  			if postIndex > l {
  4440  				return io.ErrUnexpectedEOF
  4441  			}
  4442  			m.MarketId = string(dAtA[iNdEx:postIndex])
  4443  			iNdEx = postIndex
  4444  		default:
  4445  			iNdEx = preIndex
  4446  			skippy, err := skipGenesis(dAtA[iNdEx:])
  4447  			if err != nil {
  4448  				return err
  4449  			}
  4450  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4451  				return ErrInvalidLengthGenesis
  4452  			}
  4453  			if (iNdEx + skippy) > l {
  4454  				return io.ErrUnexpectedEOF
  4455  			}
  4456  			iNdEx += skippy
  4457  		}
  4458  	}
  4459  
  4460  	if iNdEx > l {
  4461  		return io.ErrUnexpectedEOF
  4462  	}
  4463  	return nil
  4464  }
  4465  func (m *FeeDiscountAccountTierTTL) Unmarshal(dAtA []byte) error {
  4466  	l := len(dAtA)
  4467  	iNdEx := 0
  4468  	for iNdEx < l {
  4469  		preIndex := iNdEx
  4470  		var wire uint64
  4471  		for shift := uint(0); ; shift += 7 {
  4472  			if shift >= 64 {
  4473  				return ErrIntOverflowGenesis
  4474  			}
  4475  			if iNdEx >= l {
  4476  				return io.ErrUnexpectedEOF
  4477  			}
  4478  			b := dAtA[iNdEx]
  4479  			iNdEx++
  4480  			wire |= uint64(b&0x7F) << shift
  4481  			if b < 0x80 {
  4482  				break
  4483  			}
  4484  		}
  4485  		fieldNum := int32(wire >> 3)
  4486  		wireType := int(wire & 0x7)
  4487  		if wireType == 4 {
  4488  			return fmt.Errorf("proto: FeeDiscountAccountTierTTL: wiretype end group for non-group")
  4489  		}
  4490  		if fieldNum <= 0 {
  4491  			return fmt.Errorf("proto: FeeDiscountAccountTierTTL: illegal tag %d (wire type %d)", fieldNum, wire)
  4492  		}
  4493  		switch fieldNum {
  4494  		case 1:
  4495  			if wireType != 2 {
  4496  				return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType)
  4497  			}
  4498  			var stringLen uint64
  4499  			for shift := uint(0); ; shift += 7 {
  4500  				if shift >= 64 {
  4501  					return ErrIntOverflowGenesis
  4502  				}
  4503  				if iNdEx >= l {
  4504  					return io.ErrUnexpectedEOF
  4505  				}
  4506  				b := dAtA[iNdEx]
  4507  				iNdEx++
  4508  				stringLen |= uint64(b&0x7F) << shift
  4509  				if b < 0x80 {
  4510  					break
  4511  				}
  4512  			}
  4513  			intStringLen := int(stringLen)
  4514  			if intStringLen < 0 {
  4515  				return ErrInvalidLengthGenesis
  4516  			}
  4517  			postIndex := iNdEx + intStringLen
  4518  			if postIndex < 0 {
  4519  				return ErrInvalidLengthGenesis
  4520  			}
  4521  			if postIndex > l {
  4522  				return io.ErrUnexpectedEOF
  4523  			}
  4524  			m.Account = string(dAtA[iNdEx:postIndex])
  4525  			iNdEx = postIndex
  4526  		case 2:
  4527  			if wireType != 2 {
  4528  				return fmt.Errorf("proto: wrong wireType = %d for field TierTtl", wireType)
  4529  			}
  4530  			var msglen int
  4531  			for shift := uint(0); ; shift += 7 {
  4532  				if shift >= 64 {
  4533  					return ErrIntOverflowGenesis
  4534  				}
  4535  				if iNdEx >= l {
  4536  					return io.ErrUnexpectedEOF
  4537  				}
  4538  				b := dAtA[iNdEx]
  4539  				iNdEx++
  4540  				msglen |= int(b&0x7F) << shift
  4541  				if b < 0x80 {
  4542  					break
  4543  				}
  4544  			}
  4545  			if msglen < 0 {
  4546  				return ErrInvalidLengthGenesis
  4547  			}
  4548  			postIndex := iNdEx + msglen
  4549  			if postIndex < 0 {
  4550  				return ErrInvalidLengthGenesis
  4551  			}
  4552  			if postIndex > l {
  4553  				return io.ErrUnexpectedEOF
  4554  			}
  4555  			if m.TierTtl == nil {
  4556  				m.TierTtl = &FeeDiscountTierTTL{}
  4557  			}
  4558  			if err := m.TierTtl.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4559  				return err
  4560  			}
  4561  			iNdEx = postIndex
  4562  		default:
  4563  			iNdEx = preIndex
  4564  			skippy, err := skipGenesis(dAtA[iNdEx:])
  4565  			if err != nil {
  4566  				return err
  4567  			}
  4568  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4569  				return ErrInvalidLengthGenesis
  4570  			}
  4571  			if (iNdEx + skippy) > l {
  4572  				return io.ErrUnexpectedEOF
  4573  			}
  4574  			iNdEx += skippy
  4575  		}
  4576  	}
  4577  
  4578  	if iNdEx > l {
  4579  		return io.ErrUnexpectedEOF
  4580  	}
  4581  	return nil
  4582  }
  4583  func (m *FeeDiscountBucketVolumeAccounts) Unmarshal(dAtA []byte) error {
  4584  	l := len(dAtA)
  4585  	iNdEx := 0
  4586  	for iNdEx < l {
  4587  		preIndex := iNdEx
  4588  		var wire uint64
  4589  		for shift := uint(0); ; shift += 7 {
  4590  			if shift >= 64 {
  4591  				return ErrIntOverflowGenesis
  4592  			}
  4593  			if iNdEx >= l {
  4594  				return io.ErrUnexpectedEOF
  4595  			}
  4596  			b := dAtA[iNdEx]
  4597  			iNdEx++
  4598  			wire |= uint64(b&0x7F) << shift
  4599  			if b < 0x80 {
  4600  				break
  4601  			}
  4602  		}
  4603  		fieldNum := int32(wire >> 3)
  4604  		wireType := int(wire & 0x7)
  4605  		if wireType == 4 {
  4606  			return fmt.Errorf("proto: FeeDiscountBucketVolumeAccounts: wiretype end group for non-group")
  4607  		}
  4608  		if fieldNum <= 0 {
  4609  			return fmt.Errorf("proto: FeeDiscountBucketVolumeAccounts: illegal tag %d (wire type %d)", fieldNum, wire)
  4610  		}
  4611  		switch fieldNum {
  4612  		case 1:
  4613  			if wireType != 0 {
  4614  				return fmt.Errorf("proto: wrong wireType = %d for field BucketStartTimestamp", wireType)
  4615  			}
  4616  			m.BucketStartTimestamp = 0
  4617  			for shift := uint(0); ; shift += 7 {
  4618  				if shift >= 64 {
  4619  					return ErrIntOverflowGenesis
  4620  				}
  4621  				if iNdEx >= l {
  4622  					return io.ErrUnexpectedEOF
  4623  				}
  4624  				b := dAtA[iNdEx]
  4625  				iNdEx++
  4626  				m.BucketStartTimestamp |= int64(b&0x7F) << shift
  4627  				if b < 0x80 {
  4628  					break
  4629  				}
  4630  			}
  4631  		case 2:
  4632  			if wireType != 2 {
  4633  				return fmt.Errorf("proto: wrong wireType = %d for field AccountVolume", wireType)
  4634  			}
  4635  			var msglen int
  4636  			for shift := uint(0); ; shift += 7 {
  4637  				if shift >= 64 {
  4638  					return ErrIntOverflowGenesis
  4639  				}
  4640  				if iNdEx >= l {
  4641  					return io.ErrUnexpectedEOF
  4642  				}
  4643  				b := dAtA[iNdEx]
  4644  				iNdEx++
  4645  				msglen |= int(b&0x7F) << shift
  4646  				if b < 0x80 {
  4647  					break
  4648  				}
  4649  			}
  4650  			if msglen < 0 {
  4651  				return ErrInvalidLengthGenesis
  4652  			}
  4653  			postIndex := iNdEx + msglen
  4654  			if postIndex < 0 {
  4655  				return ErrInvalidLengthGenesis
  4656  			}
  4657  			if postIndex > l {
  4658  				return io.ErrUnexpectedEOF
  4659  			}
  4660  			m.AccountVolume = append(m.AccountVolume, &AccountVolume{})
  4661  			if err := m.AccountVolume[len(m.AccountVolume)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4662  				return err
  4663  			}
  4664  			iNdEx = postIndex
  4665  		default:
  4666  			iNdEx = preIndex
  4667  			skippy, err := skipGenesis(dAtA[iNdEx:])
  4668  			if err != nil {
  4669  				return err
  4670  			}
  4671  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4672  				return ErrInvalidLengthGenesis
  4673  			}
  4674  			if (iNdEx + skippy) > l {
  4675  				return io.ErrUnexpectedEOF
  4676  			}
  4677  			iNdEx += skippy
  4678  		}
  4679  	}
  4680  
  4681  	if iNdEx > l {
  4682  		return io.ErrUnexpectedEOF
  4683  	}
  4684  	return nil
  4685  }
  4686  func (m *AccountVolume) Unmarshal(dAtA []byte) error {
  4687  	l := len(dAtA)
  4688  	iNdEx := 0
  4689  	for iNdEx < l {
  4690  		preIndex := iNdEx
  4691  		var wire uint64
  4692  		for shift := uint(0); ; shift += 7 {
  4693  			if shift >= 64 {
  4694  				return ErrIntOverflowGenesis
  4695  			}
  4696  			if iNdEx >= l {
  4697  				return io.ErrUnexpectedEOF
  4698  			}
  4699  			b := dAtA[iNdEx]
  4700  			iNdEx++
  4701  			wire |= uint64(b&0x7F) << shift
  4702  			if b < 0x80 {
  4703  				break
  4704  			}
  4705  		}
  4706  		fieldNum := int32(wire >> 3)
  4707  		wireType := int(wire & 0x7)
  4708  		if wireType == 4 {
  4709  			return fmt.Errorf("proto: AccountVolume: wiretype end group for non-group")
  4710  		}
  4711  		if fieldNum <= 0 {
  4712  			return fmt.Errorf("proto: AccountVolume: illegal tag %d (wire type %d)", fieldNum, wire)
  4713  		}
  4714  		switch fieldNum {
  4715  		case 1:
  4716  			if wireType != 2 {
  4717  				return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType)
  4718  			}
  4719  			var stringLen uint64
  4720  			for shift := uint(0); ; shift += 7 {
  4721  				if shift >= 64 {
  4722  					return ErrIntOverflowGenesis
  4723  				}
  4724  				if iNdEx >= l {
  4725  					return io.ErrUnexpectedEOF
  4726  				}
  4727  				b := dAtA[iNdEx]
  4728  				iNdEx++
  4729  				stringLen |= uint64(b&0x7F) << shift
  4730  				if b < 0x80 {
  4731  					break
  4732  				}
  4733  			}
  4734  			intStringLen := int(stringLen)
  4735  			if intStringLen < 0 {
  4736  				return ErrInvalidLengthGenesis
  4737  			}
  4738  			postIndex := iNdEx + intStringLen
  4739  			if postIndex < 0 {
  4740  				return ErrInvalidLengthGenesis
  4741  			}
  4742  			if postIndex > l {
  4743  				return io.ErrUnexpectedEOF
  4744  			}
  4745  			m.Account = string(dAtA[iNdEx:postIndex])
  4746  			iNdEx = postIndex
  4747  		case 2:
  4748  			if wireType != 2 {
  4749  				return fmt.Errorf("proto: wrong wireType = %d for field Volume", wireType)
  4750  			}
  4751  			var stringLen uint64
  4752  			for shift := uint(0); ; shift += 7 {
  4753  				if shift >= 64 {
  4754  					return ErrIntOverflowGenesis
  4755  				}
  4756  				if iNdEx >= l {
  4757  					return io.ErrUnexpectedEOF
  4758  				}
  4759  				b := dAtA[iNdEx]
  4760  				iNdEx++
  4761  				stringLen |= uint64(b&0x7F) << shift
  4762  				if b < 0x80 {
  4763  					break
  4764  				}
  4765  			}
  4766  			intStringLen := int(stringLen)
  4767  			if intStringLen < 0 {
  4768  				return ErrInvalidLengthGenesis
  4769  			}
  4770  			postIndex := iNdEx + intStringLen
  4771  			if postIndex < 0 {
  4772  				return ErrInvalidLengthGenesis
  4773  			}
  4774  			if postIndex > l {
  4775  				return io.ErrUnexpectedEOF
  4776  			}
  4777  			if err := m.Volume.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4778  				return err
  4779  			}
  4780  			iNdEx = postIndex
  4781  		default:
  4782  			iNdEx = preIndex
  4783  			skippy, err := skipGenesis(dAtA[iNdEx:])
  4784  			if err != nil {
  4785  				return err
  4786  			}
  4787  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4788  				return ErrInvalidLengthGenesis
  4789  			}
  4790  			if (iNdEx + skippy) > l {
  4791  				return io.ErrUnexpectedEOF
  4792  			}
  4793  			iNdEx += skippy
  4794  		}
  4795  	}
  4796  
  4797  	if iNdEx > l {
  4798  		return io.ErrUnexpectedEOF
  4799  	}
  4800  	return nil
  4801  }
  4802  func (m *TradingRewardCampaignAccountPoints) Unmarshal(dAtA []byte) error {
  4803  	l := len(dAtA)
  4804  	iNdEx := 0
  4805  	for iNdEx < l {
  4806  		preIndex := iNdEx
  4807  		var wire uint64
  4808  		for shift := uint(0); ; shift += 7 {
  4809  			if shift >= 64 {
  4810  				return ErrIntOverflowGenesis
  4811  			}
  4812  			if iNdEx >= l {
  4813  				return io.ErrUnexpectedEOF
  4814  			}
  4815  			b := dAtA[iNdEx]
  4816  			iNdEx++
  4817  			wire |= uint64(b&0x7F) << shift
  4818  			if b < 0x80 {
  4819  				break
  4820  			}
  4821  		}
  4822  		fieldNum := int32(wire >> 3)
  4823  		wireType := int(wire & 0x7)
  4824  		if wireType == 4 {
  4825  			return fmt.Errorf("proto: TradingRewardCampaignAccountPoints: wiretype end group for non-group")
  4826  		}
  4827  		if fieldNum <= 0 {
  4828  			return fmt.Errorf("proto: TradingRewardCampaignAccountPoints: illegal tag %d (wire type %d)", fieldNum, wire)
  4829  		}
  4830  		switch fieldNum {
  4831  		case 1:
  4832  			if wireType != 2 {
  4833  				return fmt.Errorf("proto: wrong wireType = %d for field Account", wireType)
  4834  			}
  4835  			var stringLen uint64
  4836  			for shift := uint(0); ; shift += 7 {
  4837  				if shift >= 64 {
  4838  					return ErrIntOverflowGenesis
  4839  				}
  4840  				if iNdEx >= l {
  4841  					return io.ErrUnexpectedEOF
  4842  				}
  4843  				b := dAtA[iNdEx]
  4844  				iNdEx++
  4845  				stringLen |= uint64(b&0x7F) << shift
  4846  				if b < 0x80 {
  4847  					break
  4848  				}
  4849  			}
  4850  			intStringLen := int(stringLen)
  4851  			if intStringLen < 0 {
  4852  				return ErrInvalidLengthGenesis
  4853  			}
  4854  			postIndex := iNdEx + intStringLen
  4855  			if postIndex < 0 {
  4856  				return ErrInvalidLengthGenesis
  4857  			}
  4858  			if postIndex > l {
  4859  				return io.ErrUnexpectedEOF
  4860  			}
  4861  			m.Account = string(dAtA[iNdEx:postIndex])
  4862  			iNdEx = postIndex
  4863  		case 2:
  4864  			if wireType != 2 {
  4865  				return fmt.Errorf("proto: wrong wireType = %d for field Points", wireType)
  4866  			}
  4867  			var stringLen uint64
  4868  			for shift := uint(0); ; shift += 7 {
  4869  				if shift >= 64 {
  4870  					return ErrIntOverflowGenesis
  4871  				}
  4872  				if iNdEx >= l {
  4873  					return io.ErrUnexpectedEOF
  4874  				}
  4875  				b := dAtA[iNdEx]
  4876  				iNdEx++
  4877  				stringLen |= uint64(b&0x7F) << shift
  4878  				if b < 0x80 {
  4879  					break
  4880  				}
  4881  			}
  4882  			intStringLen := int(stringLen)
  4883  			if intStringLen < 0 {
  4884  				return ErrInvalidLengthGenesis
  4885  			}
  4886  			postIndex := iNdEx + intStringLen
  4887  			if postIndex < 0 {
  4888  				return ErrInvalidLengthGenesis
  4889  			}
  4890  			if postIndex > l {
  4891  				return io.ErrUnexpectedEOF
  4892  			}
  4893  			if err := m.Points.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4894  				return err
  4895  			}
  4896  			iNdEx = postIndex
  4897  		default:
  4898  			iNdEx = preIndex
  4899  			skippy, err := skipGenesis(dAtA[iNdEx:])
  4900  			if err != nil {
  4901  				return err
  4902  			}
  4903  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4904  				return ErrInvalidLengthGenesis
  4905  			}
  4906  			if (iNdEx + skippy) > l {
  4907  				return io.ErrUnexpectedEOF
  4908  			}
  4909  			iNdEx += skippy
  4910  		}
  4911  	}
  4912  
  4913  	if iNdEx > l {
  4914  		return io.ErrUnexpectedEOF
  4915  	}
  4916  	return nil
  4917  }
  4918  func (m *TradingRewardCampaignAccountPendingPoints) Unmarshal(dAtA []byte) error {
  4919  	l := len(dAtA)
  4920  	iNdEx := 0
  4921  	for iNdEx < l {
  4922  		preIndex := iNdEx
  4923  		var wire uint64
  4924  		for shift := uint(0); ; shift += 7 {
  4925  			if shift >= 64 {
  4926  				return ErrIntOverflowGenesis
  4927  			}
  4928  			if iNdEx >= l {
  4929  				return io.ErrUnexpectedEOF
  4930  			}
  4931  			b := dAtA[iNdEx]
  4932  			iNdEx++
  4933  			wire |= uint64(b&0x7F) << shift
  4934  			if b < 0x80 {
  4935  				break
  4936  			}
  4937  		}
  4938  		fieldNum := int32(wire >> 3)
  4939  		wireType := int(wire & 0x7)
  4940  		if wireType == 4 {
  4941  			return fmt.Errorf("proto: TradingRewardCampaignAccountPendingPoints: wiretype end group for non-group")
  4942  		}
  4943  		if fieldNum <= 0 {
  4944  			return fmt.Errorf("proto: TradingRewardCampaignAccountPendingPoints: illegal tag %d (wire type %d)", fieldNum, wire)
  4945  		}
  4946  		switch fieldNum {
  4947  		case 1:
  4948  			if wireType != 0 {
  4949  				return fmt.Errorf("proto: wrong wireType = %d for field RewardPoolStartTimestamp", wireType)
  4950  			}
  4951  			m.RewardPoolStartTimestamp = 0
  4952  			for shift := uint(0); ; shift += 7 {
  4953  				if shift >= 64 {
  4954  					return ErrIntOverflowGenesis
  4955  				}
  4956  				if iNdEx >= l {
  4957  					return io.ErrUnexpectedEOF
  4958  				}
  4959  				b := dAtA[iNdEx]
  4960  				iNdEx++
  4961  				m.RewardPoolStartTimestamp |= int64(b&0x7F) << shift
  4962  				if b < 0x80 {
  4963  					break
  4964  				}
  4965  			}
  4966  		case 2:
  4967  			if wireType != 2 {
  4968  				return fmt.Errorf("proto: wrong wireType = %d for field AccountPoints", wireType)
  4969  			}
  4970  			var msglen int
  4971  			for shift := uint(0); ; shift += 7 {
  4972  				if shift >= 64 {
  4973  					return ErrIntOverflowGenesis
  4974  				}
  4975  				if iNdEx >= l {
  4976  					return io.ErrUnexpectedEOF
  4977  				}
  4978  				b := dAtA[iNdEx]
  4979  				iNdEx++
  4980  				msglen |= int(b&0x7F) << shift
  4981  				if b < 0x80 {
  4982  					break
  4983  				}
  4984  			}
  4985  			if msglen < 0 {
  4986  				return ErrInvalidLengthGenesis
  4987  			}
  4988  			postIndex := iNdEx + msglen
  4989  			if postIndex < 0 {
  4990  				return ErrInvalidLengthGenesis
  4991  			}
  4992  			if postIndex > l {
  4993  				return io.ErrUnexpectedEOF
  4994  			}
  4995  			m.AccountPoints = append(m.AccountPoints, &TradingRewardCampaignAccountPoints{})
  4996  			if err := m.AccountPoints[len(m.AccountPoints)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4997  				return err
  4998  			}
  4999  			iNdEx = postIndex
  5000  		default:
  5001  			iNdEx = preIndex
  5002  			skippy, err := skipGenesis(dAtA[iNdEx:])
  5003  			if err != nil {
  5004  				return err
  5005  			}
  5006  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5007  				return ErrInvalidLengthGenesis
  5008  			}
  5009  			if (iNdEx + skippy) > l {
  5010  				return io.ErrUnexpectedEOF
  5011  			}
  5012  			iNdEx += skippy
  5013  		}
  5014  	}
  5015  
  5016  	if iNdEx > l {
  5017  		return io.ErrUnexpectedEOF
  5018  	}
  5019  	return nil
  5020  }
  5021  func (m *SpotOrderBook) Unmarshal(dAtA []byte) error {
  5022  	l := len(dAtA)
  5023  	iNdEx := 0
  5024  	for iNdEx < l {
  5025  		preIndex := iNdEx
  5026  		var wire uint64
  5027  		for shift := uint(0); ; shift += 7 {
  5028  			if shift >= 64 {
  5029  				return ErrIntOverflowGenesis
  5030  			}
  5031  			if iNdEx >= l {
  5032  				return io.ErrUnexpectedEOF
  5033  			}
  5034  			b := dAtA[iNdEx]
  5035  			iNdEx++
  5036  			wire |= uint64(b&0x7F) << shift
  5037  			if b < 0x80 {
  5038  				break
  5039  			}
  5040  		}
  5041  		fieldNum := int32(wire >> 3)
  5042  		wireType := int(wire & 0x7)
  5043  		if wireType == 4 {
  5044  			return fmt.Errorf("proto: SpotOrderBook: wiretype end group for non-group")
  5045  		}
  5046  		if fieldNum <= 0 {
  5047  			return fmt.Errorf("proto: SpotOrderBook: illegal tag %d (wire type %d)", fieldNum, wire)
  5048  		}
  5049  		switch fieldNum {
  5050  		case 1:
  5051  			if wireType != 2 {
  5052  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  5053  			}
  5054  			var stringLen uint64
  5055  			for shift := uint(0); ; shift += 7 {
  5056  				if shift >= 64 {
  5057  					return ErrIntOverflowGenesis
  5058  				}
  5059  				if iNdEx >= l {
  5060  					return io.ErrUnexpectedEOF
  5061  				}
  5062  				b := dAtA[iNdEx]
  5063  				iNdEx++
  5064  				stringLen |= uint64(b&0x7F) << shift
  5065  				if b < 0x80 {
  5066  					break
  5067  				}
  5068  			}
  5069  			intStringLen := int(stringLen)
  5070  			if intStringLen < 0 {
  5071  				return ErrInvalidLengthGenesis
  5072  			}
  5073  			postIndex := iNdEx + intStringLen
  5074  			if postIndex < 0 {
  5075  				return ErrInvalidLengthGenesis
  5076  			}
  5077  			if postIndex > l {
  5078  				return io.ErrUnexpectedEOF
  5079  			}
  5080  			m.MarketId = string(dAtA[iNdEx:postIndex])
  5081  			iNdEx = postIndex
  5082  		case 2:
  5083  			if wireType != 0 {
  5084  				return fmt.Errorf("proto: wrong wireType = %d for field IsBuySide", wireType)
  5085  			}
  5086  			var v int
  5087  			for shift := uint(0); ; shift += 7 {
  5088  				if shift >= 64 {
  5089  					return ErrIntOverflowGenesis
  5090  				}
  5091  				if iNdEx >= l {
  5092  					return io.ErrUnexpectedEOF
  5093  				}
  5094  				b := dAtA[iNdEx]
  5095  				iNdEx++
  5096  				v |= int(b&0x7F) << shift
  5097  				if b < 0x80 {
  5098  					break
  5099  				}
  5100  			}
  5101  			m.IsBuySide = bool(v != 0)
  5102  		case 3:
  5103  			if wireType != 2 {
  5104  				return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType)
  5105  			}
  5106  			var msglen int
  5107  			for shift := uint(0); ; shift += 7 {
  5108  				if shift >= 64 {
  5109  					return ErrIntOverflowGenesis
  5110  				}
  5111  				if iNdEx >= l {
  5112  					return io.ErrUnexpectedEOF
  5113  				}
  5114  				b := dAtA[iNdEx]
  5115  				iNdEx++
  5116  				msglen |= int(b&0x7F) << shift
  5117  				if b < 0x80 {
  5118  					break
  5119  				}
  5120  			}
  5121  			if msglen < 0 {
  5122  				return ErrInvalidLengthGenesis
  5123  			}
  5124  			postIndex := iNdEx + msglen
  5125  			if postIndex < 0 {
  5126  				return ErrInvalidLengthGenesis
  5127  			}
  5128  			if postIndex > l {
  5129  				return io.ErrUnexpectedEOF
  5130  			}
  5131  			m.Orders = append(m.Orders, &SpotLimitOrder{})
  5132  			if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5133  				return err
  5134  			}
  5135  			iNdEx = postIndex
  5136  		default:
  5137  			iNdEx = preIndex
  5138  			skippy, err := skipGenesis(dAtA[iNdEx:])
  5139  			if err != nil {
  5140  				return err
  5141  			}
  5142  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5143  				return ErrInvalidLengthGenesis
  5144  			}
  5145  			if (iNdEx + skippy) > l {
  5146  				return io.ErrUnexpectedEOF
  5147  			}
  5148  			iNdEx += skippy
  5149  		}
  5150  	}
  5151  
  5152  	if iNdEx > l {
  5153  		return io.ErrUnexpectedEOF
  5154  	}
  5155  	return nil
  5156  }
  5157  func (m *DerivativeOrderBook) Unmarshal(dAtA []byte) error {
  5158  	l := len(dAtA)
  5159  	iNdEx := 0
  5160  	for iNdEx < l {
  5161  		preIndex := iNdEx
  5162  		var wire uint64
  5163  		for shift := uint(0); ; shift += 7 {
  5164  			if shift >= 64 {
  5165  				return ErrIntOverflowGenesis
  5166  			}
  5167  			if iNdEx >= l {
  5168  				return io.ErrUnexpectedEOF
  5169  			}
  5170  			b := dAtA[iNdEx]
  5171  			iNdEx++
  5172  			wire |= uint64(b&0x7F) << shift
  5173  			if b < 0x80 {
  5174  				break
  5175  			}
  5176  		}
  5177  		fieldNum := int32(wire >> 3)
  5178  		wireType := int(wire & 0x7)
  5179  		if wireType == 4 {
  5180  			return fmt.Errorf("proto: DerivativeOrderBook: wiretype end group for non-group")
  5181  		}
  5182  		if fieldNum <= 0 {
  5183  			return fmt.Errorf("proto: DerivativeOrderBook: illegal tag %d (wire type %d)", fieldNum, wire)
  5184  		}
  5185  		switch fieldNum {
  5186  		case 1:
  5187  			if wireType != 2 {
  5188  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  5189  			}
  5190  			var stringLen uint64
  5191  			for shift := uint(0); ; shift += 7 {
  5192  				if shift >= 64 {
  5193  					return ErrIntOverflowGenesis
  5194  				}
  5195  				if iNdEx >= l {
  5196  					return io.ErrUnexpectedEOF
  5197  				}
  5198  				b := dAtA[iNdEx]
  5199  				iNdEx++
  5200  				stringLen |= uint64(b&0x7F) << shift
  5201  				if b < 0x80 {
  5202  					break
  5203  				}
  5204  			}
  5205  			intStringLen := int(stringLen)
  5206  			if intStringLen < 0 {
  5207  				return ErrInvalidLengthGenesis
  5208  			}
  5209  			postIndex := iNdEx + intStringLen
  5210  			if postIndex < 0 {
  5211  				return ErrInvalidLengthGenesis
  5212  			}
  5213  			if postIndex > l {
  5214  				return io.ErrUnexpectedEOF
  5215  			}
  5216  			m.MarketId = string(dAtA[iNdEx:postIndex])
  5217  			iNdEx = postIndex
  5218  		case 2:
  5219  			if wireType != 0 {
  5220  				return fmt.Errorf("proto: wrong wireType = %d for field IsBuySide", wireType)
  5221  			}
  5222  			var v int
  5223  			for shift := uint(0); ; shift += 7 {
  5224  				if shift >= 64 {
  5225  					return ErrIntOverflowGenesis
  5226  				}
  5227  				if iNdEx >= l {
  5228  					return io.ErrUnexpectedEOF
  5229  				}
  5230  				b := dAtA[iNdEx]
  5231  				iNdEx++
  5232  				v |= int(b&0x7F) << shift
  5233  				if b < 0x80 {
  5234  					break
  5235  				}
  5236  			}
  5237  			m.IsBuySide = bool(v != 0)
  5238  		case 3:
  5239  			if wireType != 2 {
  5240  				return fmt.Errorf("proto: wrong wireType = %d for field Orders", wireType)
  5241  			}
  5242  			var msglen int
  5243  			for shift := uint(0); ; shift += 7 {
  5244  				if shift >= 64 {
  5245  					return ErrIntOverflowGenesis
  5246  				}
  5247  				if iNdEx >= l {
  5248  					return io.ErrUnexpectedEOF
  5249  				}
  5250  				b := dAtA[iNdEx]
  5251  				iNdEx++
  5252  				msglen |= int(b&0x7F) << shift
  5253  				if b < 0x80 {
  5254  					break
  5255  				}
  5256  			}
  5257  			if msglen < 0 {
  5258  				return ErrInvalidLengthGenesis
  5259  			}
  5260  			postIndex := iNdEx + msglen
  5261  			if postIndex < 0 {
  5262  				return ErrInvalidLengthGenesis
  5263  			}
  5264  			if postIndex > l {
  5265  				return io.ErrUnexpectedEOF
  5266  			}
  5267  			m.Orders = append(m.Orders, &DerivativeLimitOrder{})
  5268  			if err := m.Orders[len(m.Orders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5269  				return err
  5270  			}
  5271  			iNdEx = postIndex
  5272  		default:
  5273  			iNdEx = preIndex
  5274  			skippy, err := skipGenesis(dAtA[iNdEx:])
  5275  			if err != nil {
  5276  				return err
  5277  			}
  5278  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5279  				return ErrInvalidLengthGenesis
  5280  			}
  5281  			if (iNdEx + skippy) > l {
  5282  				return io.ErrUnexpectedEOF
  5283  			}
  5284  			iNdEx += skippy
  5285  		}
  5286  	}
  5287  
  5288  	if iNdEx > l {
  5289  		return io.ErrUnexpectedEOF
  5290  	}
  5291  	return nil
  5292  }
  5293  func (m *ConditionalDerivativeOrderBook) Unmarshal(dAtA []byte) error {
  5294  	l := len(dAtA)
  5295  	iNdEx := 0
  5296  	for iNdEx < l {
  5297  		preIndex := iNdEx
  5298  		var wire uint64
  5299  		for shift := uint(0); ; shift += 7 {
  5300  			if shift >= 64 {
  5301  				return ErrIntOverflowGenesis
  5302  			}
  5303  			if iNdEx >= l {
  5304  				return io.ErrUnexpectedEOF
  5305  			}
  5306  			b := dAtA[iNdEx]
  5307  			iNdEx++
  5308  			wire |= uint64(b&0x7F) << shift
  5309  			if b < 0x80 {
  5310  				break
  5311  			}
  5312  		}
  5313  		fieldNum := int32(wire >> 3)
  5314  		wireType := int(wire & 0x7)
  5315  		if wireType == 4 {
  5316  			return fmt.Errorf("proto: ConditionalDerivativeOrderBook: wiretype end group for non-group")
  5317  		}
  5318  		if fieldNum <= 0 {
  5319  			return fmt.Errorf("proto: ConditionalDerivativeOrderBook: illegal tag %d (wire type %d)", fieldNum, wire)
  5320  		}
  5321  		switch fieldNum {
  5322  		case 1:
  5323  			if wireType != 2 {
  5324  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  5325  			}
  5326  			var stringLen uint64
  5327  			for shift := uint(0); ; shift += 7 {
  5328  				if shift >= 64 {
  5329  					return ErrIntOverflowGenesis
  5330  				}
  5331  				if iNdEx >= l {
  5332  					return io.ErrUnexpectedEOF
  5333  				}
  5334  				b := dAtA[iNdEx]
  5335  				iNdEx++
  5336  				stringLen |= uint64(b&0x7F) << shift
  5337  				if b < 0x80 {
  5338  					break
  5339  				}
  5340  			}
  5341  			intStringLen := int(stringLen)
  5342  			if intStringLen < 0 {
  5343  				return ErrInvalidLengthGenesis
  5344  			}
  5345  			postIndex := iNdEx + intStringLen
  5346  			if postIndex < 0 {
  5347  				return ErrInvalidLengthGenesis
  5348  			}
  5349  			if postIndex > l {
  5350  				return io.ErrUnexpectedEOF
  5351  			}
  5352  			m.MarketId = string(dAtA[iNdEx:postIndex])
  5353  			iNdEx = postIndex
  5354  		case 2:
  5355  			if wireType != 2 {
  5356  				return fmt.Errorf("proto: wrong wireType = %d for field LimitBuyOrders", wireType)
  5357  			}
  5358  			var msglen int
  5359  			for shift := uint(0); ; shift += 7 {
  5360  				if shift >= 64 {
  5361  					return ErrIntOverflowGenesis
  5362  				}
  5363  				if iNdEx >= l {
  5364  					return io.ErrUnexpectedEOF
  5365  				}
  5366  				b := dAtA[iNdEx]
  5367  				iNdEx++
  5368  				msglen |= int(b&0x7F) << shift
  5369  				if b < 0x80 {
  5370  					break
  5371  				}
  5372  			}
  5373  			if msglen < 0 {
  5374  				return ErrInvalidLengthGenesis
  5375  			}
  5376  			postIndex := iNdEx + msglen
  5377  			if postIndex < 0 {
  5378  				return ErrInvalidLengthGenesis
  5379  			}
  5380  			if postIndex > l {
  5381  				return io.ErrUnexpectedEOF
  5382  			}
  5383  			m.LimitBuyOrders = append(m.LimitBuyOrders, &DerivativeLimitOrder{})
  5384  			if err := m.LimitBuyOrders[len(m.LimitBuyOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5385  				return err
  5386  			}
  5387  			iNdEx = postIndex
  5388  		case 3:
  5389  			if wireType != 2 {
  5390  				return fmt.Errorf("proto: wrong wireType = %d for field MarketBuyOrders", wireType)
  5391  			}
  5392  			var msglen int
  5393  			for shift := uint(0); ; shift += 7 {
  5394  				if shift >= 64 {
  5395  					return ErrIntOverflowGenesis
  5396  				}
  5397  				if iNdEx >= l {
  5398  					return io.ErrUnexpectedEOF
  5399  				}
  5400  				b := dAtA[iNdEx]
  5401  				iNdEx++
  5402  				msglen |= int(b&0x7F) << shift
  5403  				if b < 0x80 {
  5404  					break
  5405  				}
  5406  			}
  5407  			if msglen < 0 {
  5408  				return ErrInvalidLengthGenesis
  5409  			}
  5410  			postIndex := iNdEx + msglen
  5411  			if postIndex < 0 {
  5412  				return ErrInvalidLengthGenesis
  5413  			}
  5414  			if postIndex > l {
  5415  				return io.ErrUnexpectedEOF
  5416  			}
  5417  			m.MarketBuyOrders = append(m.MarketBuyOrders, &DerivativeMarketOrder{})
  5418  			if err := m.MarketBuyOrders[len(m.MarketBuyOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5419  				return err
  5420  			}
  5421  			iNdEx = postIndex
  5422  		case 4:
  5423  			if wireType != 2 {
  5424  				return fmt.Errorf("proto: wrong wireType = %d for field LimitSellOrders", wireType)
  5425  			}
  5426  			var msglen int
  5427  			for shift := uint(0); ; shift += 7 {
  5428  				if shift >= 64 {
  5429  					return ErrIntOverflowGenesis
  5430  				}
  5431  				if iNdEx >= l {
  5432  					return io.ErrUnexpectedEOF
  5433  				}
  5434  				b := dAtA[iNdEx]
  5435  				iNdEx++
  5436  				msglen |= int(b&0x7F) << shift
  5437  				if b < 0x80 {
  5438  					break
  5439  				}
  5440  			}
  5441  			if msglen < 0 {
  5442  				return ErrInvalidLengthGenesis
  5443  			}
  5444  			postIndex := iNdEx + msglen
  5445  			if postIndex < 0 {
  5446  				return ErrInvalidLengthGenesis
  5447  			}
  5448  			if postIndex > l {
  5449  				return io.ErrUnexpectedEOF
  5450  			}
  5451  			m.LimitSellOrders = append(m.LimitSellOrders, &DerivativeLimitOrder{})
  5452  			if err := m.LimitSellOrders[len(m.LimitSellOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5453  				return err
  5454  			}
  5455  			iNdEx = postIndex
  5456  		case 5:
  5457  			if wireType != 2 {
  5458  				return fmt.Errorf("proto: wrong wireType = %d for field MarketSellOrders", wireType)
  5459  			}
  5460  			var msglen int
  5461  			for shift := uint(0); ; shift += 7 {
  5462  				if shift >= 64 {
  5463  					return ErrIntOverflowGenesis
  5464  				}
  5465  				if iNdEx >= l {
  5466  					return io.ErrUnexpectedEOF
  5467  				}
  5468  				b := dAtA[iNdEx]
  5469  				iNdEx++
  5470  				msglen |= int(b&0x7F) << shift
  5471  				if b < 0x80 {
  5472  					break
  5473  				}
  5474  			}
  5475  			if msglen < 0 {
  5476  				return ErrInvalidLengthGenesis
  5477  			}
  5478  			postIndex := iNdEx + msglen
  5479  			if postIndex < 0 {
  5480  				return ErrInvalidLengthGenesis
  5481  			}
  5482  			if postIndex > l {
  5483  				return io.ErrUnexpectedEOF
  5484  			}
  5485  			m.MarketSellOrders = append(m.MarketSellOrders, &DerivativeMarketOrder{})
  5486  			if err := m.MarketSellOrders[len(m.MarketSellOrders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5487  				return err
  5488  			}
  5489  			iNdEx = postIndex
  5490  		default:
  5491  			iNdEx = preIndex
  5492  			skippy, err := skipGenesis(dAtA[iNdEx:])
  5493  			if err != nil {
  5494  				return err
  5495  			}
  5496  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5497  				return ErrInvalidLengthGenesis
  5498  			}
  5499  			if (iNdEx + skippy) > l {
  5500  				return io.ErrUnexpectedEOF
  5501  			}
  5502  			iNdEx += skippy
  5503  		}
  5504  	}
  5505  
  5506  	if iNdEx > l {
  5507  		return io.ErrUnexpectedEOF
  5508  	}
  5509  	return nil
  5510  }
  5511  func (m *Balance) Unmarshal(dAtA []byte) error {
  5512  	l := len(dAtA)
  5513  	iNdEx := 0
  5514  	for iNdEx < l {
  5515  		preIndex := iNdEx
  5516  		var wire uint64
  5517  		for shift := uint(0); ; shift += 7 {
  5518  			if shift >= 64 {
  5519  				return ErrIntOverflowGenesis
  5520  			}
  5521  			if iNdEx >= l {
  5522  				return io.ErrUnexpectedEOF
  5523  			}
  5524  			b := dAtA[iNdEx]
  5525  			iNdEx++
  5526  			wire |= uint64(b&0x7F) << shift
  5527  			if b < 0x80 {
  5528  				break
  5529  			}
  5530  		}
  5531  		fieldNum := int32(wire >> 3)
  5532  		wireType := int(wire & 0x7)
  5533  		if wireType == 4 {
  5534  			return fmt.Errorf("proto: Balance: wiretype end group for non-group")
  5535  		}
  5536  		if fieldNum <= 0 {
  5537  			return fmt.Errorf("proto: Balance: illegal tag %d (wire type %d)", fieldNum, wire)
  5538  		}
  5539  		switch fieldNum {
  5540  		case 1:
  5541  			if wireType != 2 {
  5542  				return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType)
  5543  			}
  5544  			var stringLen uint64
  5545  			for shift := uint(0); ; shift += 7 {
  5546  				if shift >= 64 {
  5547  					return ErrIntOverflowGenesis
  5548  				}
  5549  				if iNdEx >= l {
  5550  					return io.ErrUnexpectedEOF
  5551  				}
  5552  				b := dAtA[iNdEx]
  5553  				iNdEx++
  5554  				stringLen |= uint64(b&0x7F) << shift
  5555  				if b < 0x80 {
  5556  					break
  5557  				}
  5558  			}
  5559  			intStringLen := int(stringLen)
  5560  			if intStringLen < 0 {
  5561  				return ErrInvalidLengthGenesis
  5562  			}
  5563  			postIndex := iNdEx + intStringLen
  5564  			if postIndex < 0 {
  5565  				return ErrInvalidLengthGenesis
  5566  			}
  5567  			if postIndex > l {
  5568  				return io.ErrUnexpectedEOF
  5569  			}
  5570  			m.SubaccountId = string(dAtA[iNdEx:postIndex])
  5571  			iNdEx = postIndex
  5572  		case 2:
  5573  			if wireType != 2 {
  5574  				return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType)
  5575  			}
  5576  			var stringLen uint64
  5577  			for shift := uint(0); ; shift += 7 {
  5578  				if shift >= 64 {
  5579  					return ErrIntOverflowGenesis
  5580  				}
  5581  				if iNdEx >= l {
  5582  					return io.ErrUnexpectedEOF
  5583  				}
  5584  				b := dAtA[iNdEx]
  5585  				iNdEx++
  5586  				stringLen |= uint64(b&0x7F) << shift
  5587  				if b < 0x80 {
  5588  					break
  5589  				}
  5590  			}
  5591  			intStringLen := int(stringLen)
  5592  			if intStringLen < 0 {
  5593  				return ErrInvalidLengthGenesis
  5594  			}
  5595  			postIndex := iNdEx + intStringLen
  5596  			if postIndex < 0 {
  5597  				return ErrInvalidLengthGenesis
  5598  			}
  5599  			if postIndex > l {
  5600  				return io.ErrUnexpectedEOF
  5601  			}
  5602  			m.Denom = string(dAtA[iNdEx:postIndex])
  5603  			iNdEx = postIndex
  5604  		case 3:
  5605  			if wireType != 2 {
  5606  				return fmt.Errorf("proto: wrong wireType = %d for field Deposits", wireType)
  5607  			}
  5608  			var msglen int
  5609  			for shift := uint(0); ; shift += 7 {
  5610  				if shift >= 64 {
  5611  					return ErrIntOverflowGenesis
  5612  				}
  5613  				if iNdEx >= l {
  5614  					return io.ErrUnexpectedEOF
  5615  				}
  5616  				b := dAtA[iNdEx]
  5617  				iNdEx++
  5618  				msglen |= int(b&0x7F) << shift
  5619  				if b < 0x80 {
  5620  					break
  5621  				}
  5622  			}
  5623  			if msglen < 0 {
  5624  				return ErrInvalidLengthGenesis
  5625  			}
  5626  			postIndex := iNdEx + msglen
  5627  			if postIndex < 0 {
  5628  				return ErrInvalidLengthGenesis
  5629  			}
  5630  			if postIndex > l {
  5631  				return io.ErrUnexpectedEOF
  5632  			}
  5633  			if m.Deposits == nil {
  5634  				m.Deposits = &Deposit{}
  5635  			}
  5636  			if err := m.Deposits.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5637  				return err
  5638  			}
  5639  			iNdEx = postIndex
  5640  		default:
  5641  			iNdEx = preIndex
  5642  			skippy, err := skipGenesis(dAtA[iNdEx:])
  5643  			if err != nil {
  5644  				return err
  5645  			}
  5646  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5647  				return ErrInvalidLengthGenesis
  5648  			}
  5649  			if (iNdEx + skippy) > l {
  5650  				return io.ErrUnexpectedEOF
  5651  			}
  5652  			iNdEx += skippy
  5653  		}
  5654  	}
  5655  
  5656  	if iNdEx > l {
  5657  		return io.ErrUnexpectedEOF
  5658  	}
  5659  	return nil
  5660  }
  5661  func (m *DerivativePosition) Unmarshal(dAtA []byte) error {
  5662  	l := len(dAtA)
  5663  	iNdEx := 0
  5664  	for iNdEx < l {
  5665  		preIndex := iNdEx
  5666  		var wire uint64
  5667  		for shift := uint(0); ; shift += 7 {
  5668  			if shift >= 64 {
  5669  				return ErrIntOverflowGenesis
  5670  			}
  5671  			if iNdEx >= l {
  5672  				return io.ErrUnexpectedEOF
  5673  			}
  5674  			b := dAtA[iNdEx]
  5675  			iNdEx++
  5676  			wire |= uint64(b&0x7F) << shift
  5677  			if b < 0x80 {
  5678  				break
  5679  			}
  5680  		}
  5681  		fieldNum := int32(wire >> 3)
  5682  		wireType := int(wire & 0x7)
  5683  		if wireType == 4 {
  5684  			return fmt.Errorf("proto: DerivativePosition: wiretype end group for non-group")
  5685  		}
  5686  		if fieldNum <= 0 {
  5687  			return fmt.Errorf("proto: DerivativePosition: illegal tag %d (wire type %d)", fieldNum, wire)
  5688  		}
  5689  		switch fieldNum {
  5690  		case 1:
  5691  			if wireType != 2 {
  5692  				return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType)
  5693  			}
  5694  			var stringLen uint64
  5695  			for shift := uint(0); ; shift += 7 {
  5696  				if shift >= 64 {
  5697  					return ErrIntOverflowGenesis
  5698  				}
  5699  				if iNdEx >= l {
  5700  					return io.ErrUnexpectedEOF
  5701  				}
  5702  				b := dAtA[iNdEx]
  5703  				iNdEx++
  5704  				stringLen |= uint64(b&0x7F) << shift
  5705  				if b < 0x80 {
  5706  					break
  5707  				}
  5708  			}
  5709  			intStringLen := int(stringLen)
  5710  			if intStringLen < 0 {
  5711  				return ErrInvalidLengthGenesis
  5712  			}
  5713  			postIndex := iNdEx + intStringLen
  5714  			if postIndex < 0 {
  5715  				return ErrInvalidLengthGenesis
  5716  			}
  5717  			if postIndex > l {
  5718  				return io.ErrUnexpectedEOF
  5719  			}
  5720  			m.SubaccountId = string(dAtA[iNdEx:postIndex])
  5721  			iNdEx = postIndex
  5722  		case 2:
  5723  			if wireType != 2 {
  5724  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  5725  			}
  5726  			var stringLen uint64
  5727  			for shift := uint(0); ; shift += 7 {
  5728  				if shift >= 64 {
  5729  					return ErrIntOverflowGenesis
  5730  				}
  5731  				if iNdEx >= l {
  5732  					return io.ErrUnexpectedEOF
  5733  				}
  5734  				b := dAtA[iNdEx]
  5735  				iNdEx++
  5736  				stringLen |= uint64(b&0x7F) << shift
  5737  				if b < 0x80 {
  5738  					break
  5739  				}
  5740  			}
  5741  			intStringLen := int(stringLen)
  5742  			if intStringLen < 0 {
  5743  				return ErrInvalidLengthGenesis
  5744  			}
  5745  			postIndex := iNdEx + intStringLen
  5746  			if postIndex < 0 {
  5747  				return ErrInvalidLengthGenesis
  5748  			}
  5749  			if postIndex > l {
  5750  				return io.ErrUnexpectedEOF
  5751  			}
  5752  			m.MarketId = string(dAtA[iNdEx:postIndex])
  5753  			iNdEx = postIndex
  5754  		case 3:
  5755  			if wireType != 2 {
  5756  				return fmt.Errorf("proto: wrong wireType = %d for field Position", wireType)
  5757  			}
  5758  			var msglen int
  5759  			for shift := uint(0); ; shift += 7 {
  5760  				if shift >= 64 {
  5761  					return ErrIntOverflowGenesis
  5762  				}
  5763  				if iNdEx >= l {
  5764  					return io.ErrUnexpectedEOF
  5765  				}
  5766  				b := dAtA[iNdEx]
  5767  				iNdEx++
  5768  				msglen |= int(b&0x7F) << shift
  5769  				if b < 0x80 {
  5770  					break
  5771  				}
  5772  			}
  5773  			if msglen < 0 {
  5774  				return ErrInvalidLengthGenesis
  5775  			}
  5776  			postIndex := iNdEx + msglen
  5777  			if postIndex < 0 {
  5778  				return ErrInvalidLengthGenesis
  5779  			}
  5780  			if postIndex > l {
  5781  				return io.ErrUnexpectedEOF
  5782  			}
  5783  			if m.Position == nil {
  5784  				m.Position = &Position{}
  5785  			}
  5786  			if err := m.Position.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5787  				return err
  5788  			}
  5789  			iNdEx = postIndex
  5790  		default:
  5791  			iNdEx = preIndex
  5792  			skippy, err := skipGenesis(dAtA[iNdEx:])
  5793  			if err != nil {
  5794  				return err
  5795  			}
  5796  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5797  				return ErrInvalidLengthGenesis
  5798  			}
  5799  			if (iNdEx + skippy) > l {
  5800  				return io.ErrUnexpectedEOF
  5801  			}
  5802  			iNdEx += skippy
  5803  		}
  5804  	}
  5805  
  5806  	if iNdEx > l {
  5807  		return io.ErrUnexpectedEOF
  5808  	}
  5809  	return nil
  5810  }
  5811  func (m *SubaccountNonce) Unmarshal(dAtA []byte) error {
  5812  	l := len(dAtA)
  5813  	iNdEx := 0
  5814  	for iNdEx < l {
  5815  		preIndex := iNdEx
  5816  		var wire uint64
  5817  		for shift := uint(0); ; shift += 7 {
  5818  			if shift >= 64 {
  5819  				return ErrIntOverflowGenesis
  5820  			}
  5821  			if iNdEx >= l {
  5822  				return io.ErrUnexpectedEOF
  5823  			}
  5824  			b := dAtA[iNdEx]
  5825  			iNdEx++
  5826  			wire |= uint64(b&0x7F) << shift
  5827  			if b < 0x80 {
  5828  				break
  5829  			}
  5830  		}
  5831  		fieldNum := int32(wire >> 3)
  5832  		wireType := int(wire & 0x7)
  5833  		if wireType == 4 {
  5834  			return fmt.Errorf("proto: SubaccountNonce: wiretype end group for non-group")
  5835  		}
  5836  		if fieldNum <= 0 {
  5837  			return fmt.Errorf("proto: SubaccountNonce: illegal tag %d (wire type %d)", fieldNum, wire)
  5838  		}
  5839  		switch fieldNum {
  5840  		case 1:
  5841  			if wireType != 2 {
  5842  				return fmt.Errorf("proto: wrong wireType = %d for field SubaccountId", wireType)
  5843  			}
  5844  			var stringLen uint64
  5845  			for shift := uint(0); ; shift += 7 {
  5846  				if shift >= 64 {
  5847  					return ErrIntOverflowGenesis
  5848  				}
  5849  				if iNdEx >= l {
  5850  					return io.ErrUnexpectedEOF
  5851  				}
  5852  				b := dAtA[iNdEx]
  5853  				iNdEx++
  5854  				stringLen |= uint64(b&0x7F) << shift
  5855  				if b < 0x80 {
  5856  					break
  5857  				}
  5858  			}
  5859  			intStringLen := int(stringLen)
  5860  			if intStringLen < 0 {
  5861  				return ErrInvalidLengthGenesis
  5862  			}
  5863  			postIndex := iNdEx + intStringLen
  5864  			if postIndex < 0 {
  5865  				return ErrInvalidLengthGenesis
  5866  			}
  5867  			if postIndex > l {
  5868  				return io.ErrUnexpectedEOF
  5869  			}
  5870  			m.SubaccountId = string(dAtA[iNdEx:postIndex])
  5871  			iNdEx = postIndex
  5872  		case 2:
  5873  			if wireType != 2 {
  5874  				return fmt.Errorf("proto: wrong wireType = %d for field SubaccountTradeNonce", wireType)
  5875  			}
  5876  			var msglen int
  5877  			for shift := uint(0); ; shift += 7 {
  5878  				if shift >= 64 {
  5879  					return ErrIntOverflowGenesis
  5880  				}
  5881  				if iNdEx >= l {
  5882  					return io.ErrUnexpectedEOF
  5883  				}
  5884  				b := dAtA[iNdEx]
  5885  				iNdEx++
  5886  				msglen |= int(b&0x7F) << shift
  5887  				if b < 0x80 {
  5888  					break
  5889  				}
  5890  			}
  5891  			if msglen < 0 {
  5892  				return ErrInvalidLengthGenesis
  5893  			}
  5894  			postIndex := iNdEx + msglen
  5895  			if postIndex < 0 {
  5896  				return ErrInvalidLengthGenesis
  5897  			}
  5898  			if postIndex > l {
  5899  				return io.ErrUnexpectedEOF
  5900  			}
  5901  			if err := m.SubaccountTradeNonce.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5902  				return err
  5903  			}
  5904  			iNdEx = postIndex
  5905  		default:
  5906  			iNdEx = preIndex
  5907  			skippy, err := skipGenesis(dAtA[iNdEx:])
  5908  			if err != nil {
  5909  				return err
  5910  			}
  5911  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5912  				return ErrInvalidLengthGenesis
  5913  			}
  5914  			if (iNdEx + skippy) > l {
  5915  				return io.ErrUnexpectedEOF
  5916  			}
  5917  			iNdEx += skippy
  5918  		}
  5919  	}
  5920  
  5921  	if iNdEx > l {
  5922  		return io.ErrUnexpectedEOF
  5923  	}
  5924  	return nil
  5925  }
  5926  func (m *ExpiryFuturesMarketInfoState) Unmarshal(dAtA []byte) error {
  5927  	l := len(dAtA)
  5928  	iNdEx := 0
  5929  	for iNdEx < l {
  5930  		preIndex := iNdEx
  5931  		var wire uint64
  5932  		for shift := uint(0); ; shift += 7 {
  5933  			if shift >= 64 {
  5934  				return ErrIntOverflowGenesis
  5935  			}
  5936  			if iNdEx >= l {
  5937  				return io.ErrUnexpectedEOF
  5938  			}
  5939  			b := dAtA[iNdEx]
  5940  			iNdEx++
  5941  			wire |= uint64(b&0x7F) << shift
  5942  			if b < 0x80 {
  5943  				break
  5944  			}
  5945  		}
  5946  		fieldNum := int32(wire >> 3)
  5947  		wireType := int(wire & 0x7)
  5948  		if wireType == 4 {
  5949  			return fmt.Errorf("proto: ExpiryFuturesMarketInfoState: wiretype end group for non-group")
  5950  		}
  5951  		if fieldNum <= 0 {
  5952  			return fmt.Errorf("proto: ExpiryFuturesMarketInfoState: illegal tag %d (wire type %d)", fieldNum, wire)
  5953  		}
  5954  		switch fieldNum {
  5955  		case 1:
  5956  			if wireType != 2 {
  5957  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  5958  			}
  5959  			var stringLen uint64
  5960  			for shift := uint(0); ; shift += 7 {
  5961  				if shift >= 64 {
  5962  					return ErrIntOverflowGenesis
  5963  				}
  5964  				if iNdEx >= l {
  5965  					return io.ErrUnexpectedEOF
  5966  				}
  5967  				b := dAtA[iNdEx]
  5968  				iNdEx++
  5969  				stringLen |= uint64(b&0x7F) << shift
  5970  				if b < 0x80 {
  5971  					break
  5972  				}
  5973  			}
  5974  			intStringLen := int(stringLen)
  5975  			if intStringLen < 0 {
  5976  				return ErrInvalidLengthGenesis
  5977  			}
  5978  			postIndex := iNdEx + intStringLen
  5979  			if postIndex < 0 {
  5980  				return ErrInvalidLengthGenesis
  5981  			}
  5982  			if postIndex > l {
  5983  				return io.ErrUnexpectedEOF
  5984  			}
  5985  			m.MarketId = string(dAtA[iNdEx:postIndex])
  5986  			iNdEx = postIndex
  5987  		case 2:
  5988  			if wireType != 2 {
  5989  				return fmt.Errorf("proto: wrong wireType = %d for field MarketInfo", wireType)
  5990  			}
  5991  			var msglen int
  5992  			for shift := uint(0); ; shift += 7 {
  5993  				if shift >= 64 {
  5994  					return ErrIntOverflowGenesis
  5995  				}
  5996  				if iNdEx >= l {
  5997  					return io.ErrUnexpectedEOF
  5998  				}
  5999  				b := dAtA[iNdEx]
  6000  				iNdEx++
  6001  				msglen |= int(b&0x7F) << shift
  6002  				if b < 0x80 {
  6003  					break
  6004  				}
  6005  			}
  6006  			if msglen < 0 {
  6007  				return ErrInvalidLengthGenesis
  6008  			}
  6009  			postIndex := iNdEx + msglen
  6010  			if postIndex < 0 {
  6011  				return ErrInvalidLengthGenesis
  6012  			}
  6013  			if postIndex > l {
  6014  				return io.ErrUnexpectedEOF
  6015  			}
  6016  			if m.MarketInfo == nil {
  6017  				m.MarketInfo = &ExpiryFuturesMarketInfo{}
  6018  			}
  6019  			if err := m.MarketInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6020  				return err
  6021  			}
  6022  			iNdEx = postIndex
  6023  		default:
  6024  			iNdEx = preIndex
  6025  			skippy, err := skipGenesis(dAtA[iNdEx:])
  6026  			if err != nil {
  6027  				return err
  6028  			}
  6029  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6030  				return ErrInvalidLengthGenesis
  6031  			}
  6032  			if (iNdEx + skippy) > l {
  6033  				return io.ErrUnexpectedEOF
  6034  			}
  6035  			iNdEx += skippy
  6036  		}
  6037  	}
  6038  
  6039  	if iNdEx > l {
  6040  		return io.ErrUnexpectedEOF
  6041  	}
  6042  	return nil
  6043  }
  6044  func (m *PerpetualMarketFundingState) Unmarshal(dAtA []byte) error {
  6045  	l := len(dAtA)
  6046  	iNdEx := 0
  6047  	for iNdEx < l {
  6048  		preIndex := iNdEx
  6049  		var wire uint64
  6050  		for shift := uint(0); ; shift += 7 {
  6051  			if shift >= 64 {
  6052  				return ErrIntOverflowGenesis
  6053  			}
  6054  			if iNdEx >= l {
  6055  				return io.ErrUnexpectedEOF
  6056  			}
  6057  			b := dAtA[iNdEx]
  6058  			iNdEx++
  6059  			wire |= uint64(b&0x7F) << shift
  6060  			if b < 0x80 {
  6061  				break
  6062  			}
  6063  		}
  6064  		fieldNum := int32(wire >> 3)
  6065  		wireType := int(wire & 0x7)
  6066  		if wireType == 4 {
  6067  			return fmt.Errorf("proto: PerpetualMarketFundingState: wiretype end group for non-group")
  6068  		}
  6069  		if fieldNum <= 0 {
  6070  			return fmt.Errorf("proto: PerpetualMarketFundingState: illegal tag %d (wire type %d)", fieldNum, wire)
  6071  		}
  6072  		switch fieldNum {
  6073  		case 1:
  6074  			if wireType != 2 {
  6075  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  6076  			}
  6077  			var stringLen uint64
  6078  			for shift := uint(0); ; shift += 7 {
  6079  				if shift >= 64 {
  6080  					return ErrIntOverflowGenesis
  6081  				}
  6082  				if iNdEx >= l {
  6083  					return io.ErrUnexpectedEOF
  6084  				}
  6085  				b := dAtA[iNdEx]
  6086  				iNdEx++
  6087  				stringLen |= uint64(b&0x7F) << shift
  6088  				if b < 0x80 {
  6089  					break
  6090  				}
  6091  			}
  6092  			intStringLen := int(stringLen)
  6093  			if intStringLen < 0 {
  6094  				return ErrInvalidLengthGenesis
  6095  			}
  6096  			postIndex := iNdEx + intStringLen
  6097  			if postIndex < 0 {
  6098  				return ErrInvalidLengthGenesis
  6099  			}
  6100  			if postIndex > l {
  6101  				return io.ErrUnexpectedEOF
  6102  			}
  6103  			m.MarketId = string(dAtA[iNdEx:postIndex])
  6104  			iNdEx = postIndex
  6105  		case 2:
  6106  			if wireType != 2 {
  6107  				return fmt.Errorf("proto: wrong wireType = %d for field Funding", wireType)
  6108  			}
  6109  			var msglen int
  6110  			for shift := uint(0); ; shift += 7 {
  6111  				if shift >= 64 {
  6112  					return ErrIntOverflowGenesis
  6113  				}
  6114  				if iNdEx >= l {
  6115  					return io.ErrUnexpectedEOF
  6116  				}
  6117  				b := dAtA[iNdEx]
  6118  				iNdEx++
  6119  				msglen |= int(b&0x7F) << shift
  6120  				if b < 0x80 {
  6121  					break
  6122  				}
  6123  			}
  6124  			if msglen < 0 {
  6125  				return ErrInvalidLengthGenesis
  6126  			}
  6127  			postIndex := iNdEx + msglen
  6128  			if postIndex < 0 {
  6129  				return ErrInvalidLengthGenesis
  6130  			}
  6131  			if postIndex > l {
  6132  				return io.ErrUnexpectedEOF
  6133  			}
  6134  			if m.Funding == nil {
  6135  				m.Funding = &PerpetualMarketFunding{}
  6136  			}
  6137  			if err := m.Funding.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6138  				return err
  6139  			}
  6140  			iNdEx = postIndex
  6141  		default:
  6142  			iNdEx = preIndex
  6143  			skippy, err := skipGenesis(dAtA[iNdEx:])
  6144  			if err != nil {
  6145  				return err
  6146  			}
  6147  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6148  				return ErrInvalidLengthGenesis
  6149  			}
  6150  			if (iNdEx + skippy) > l {
  6151  				return io.ErrUnexpectedEOF
  6152  			}
  6153  			iNdEx += skippy
  6154  		}
  6155  	}
  6156  
  6157  	if iNdEx > l {
  6158  		return io.ErrUnexpectedEOF
  6159  	}
  6160  	return nil
  6161  }
  6162  func (m *FullGrantAuthorizations) Unmarshal(dAtA []byte) error {
  6163  	l := len(dAtA)
  6164  	iNdEx := 0
  6165  	for iNdEx < l {
  6166  		preIndex := iNdEx
  6167  		var wire uint64
  6168  		for shift := uint(0); ; shift += 7 {
  6169  			if shift >= 64 {
  6170  				return ErrIntOverflowGenesis
  6171  			}
  6172  			if iNdEx >= l {
  6173  				return io.ErrUnexpectedEOF
  6174  			}
  6175  			b := dAtA[iNdEx]
  6176  			iNdEx++
  6177  			wire |= uint64(b&0x7F) << shift
  6178  			if b < 0x80 {
  6179  				break
  6180  			}
  6181  		}
  6182  		fieldNum := int32(wire >> 3)
  6183  		wireType := int(wire & 0x7)
  6184  		if wireType == 4 {
  6185  			return fmt.Errorf("proto: FullGrantAuthorizations: wiretype end group for non-group")
  6186  		}
  6187  		if fieldNum <= 0 {
  6188  			return fmt.Errorf("proto: FullGrantAuthorizations: illegal tag %d (wire type %d)", fieldNum, wire)
  6189  		}
  6190  		switch fieldNum {
  6191  		case 1:
  6192  			if wireType != 2 {
  6193  				return fmt.Errorf("proto: wrong wireType = %d for field Granter", wireType)
  6194  			}
  6195  			var stringLen uint64
  6196  			for shift := uint(0); ; shift += 7 {
  6197  				if shift >= 64 {
  6198  					return ErrIntOverflowGenesis
  6199  				}
  6200  				if iNdEx >= l {
  6201  					return io.ErrUnexpectedEOF
  6202  				}
  6203  				b := dAtA[iNdEx]
  6204  				iNdEx++
  6205  				stringLen |= uint64(b&0x7F) << shift
  6206  				if b < 0x80 {
  6207  					break
  6208  				}
  6209  			}
  6210  			intStringLen := int(stringLen)
  6211  			if intStringLen < 0 {
  6212  				return ErrInvalidLengthGenesis
  6213  			}
  6214  			postIndex := iNdEx + intStringLen
  6215  			if postIndex < 0 {
  6216  				return ErrInvalidLengthGenesis
  6217  			}
  6218  			if postIndex > l {
  6219  				return io.ErrUnexpectedEOF
  6220  			}
  6221  			m.Granter = string(dAtA[iNdEx:postIndex])
  6222  			iNdEx = postIndex
  6223  		case 2:
  6224  			if wireType != 2 {
  6225  				return fmt.Errorf("proto: wrong wireType = %d for field TotalGrantAmount", wireType)
  6226  			}
  6227  			var stringLen uint64
  6228  			for shift := uint(0); ; shift += 7 {
  6229  				if shift >= 64 {
  6230  					return ErrIntOverflowGenesis
  6231  				}
  6232  				if iNdEx >= l {
  6233  					return io.ErrUnexpectedEOF
  6234  				}
  6235  				b := dAtA[iNdEx]
  6236  				iNdEx++
  6237  				stringLen |= uint64(b&0x7F) << shift
  6238  				if b < 0x80 {
  6239  					break
  6240  				}
  6241  			}
  6242  			intStringLen := int(stringLen)
  6243  			if intStringLen < 0 {
  6244  				return ErrInvalidLengthGenesis
  6245  			}
  6246  			postIndex := iNdEx + intStringLen
  6247  			if postIndex < 0 {
  6248  				return ErrInvalidLengthGenesis
  6249  			}
  6250  			if postIndex > l {
  6251  				return io.ErrUnexpectedEOF
  6252  			}
  6253  			if err := m.TotalGrantAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6254  				return err
  6255  			}
  6256  			iNdEx = postIndex
  6257  		case 3:
  6258  			if wireType != 0 {
  6259  				return fmt.Errorf("proto: wrong wireType = %d for field LastDelegationsCheckedTime", wireType)
  6260  			}
  6261  			m.LastDelegationsCheckedTime = 0
  6262  			for shift := uint(0); ; shift += 7 {
  6263  				if shift >= 64 {
  6264  					return ErrIntOverflowGenesis
  6265  				}
  6266  				if iNdEx >= l {
  6267  					return io.ErrUnexpectedEOF
  6268  				}
  6269  				b := dAtA[iNdEx]
  6270  				iNdEx++
  6271  				m.LastDelegationsCheckedTime |= int64(b&0x7F) << shift
  6272  				if b < 0x80 {
  6273  					break
  6274  				}
  6275  			}
  6276  		case 4:
  6277  			if wireType != 2 {
  6278  				return fmt.Errorf("proto: wrong wireType = %d for field Grants", wireType)
  6279  			}
  6280  			var msglen int
  6281  			for shift := uint(0); ; shift += 7 {
  6282  				if shift >= 64 {
  6283  					return ErrIntOverflowGenesis
  6284  				}
  6285  				if iNdEx >= l {
  6286  					return io.ErrUnexpectedEOF
  6287  				}
  6288  				b := dAtA[iNdEx]
  6289  				iNdEx++
  6290  				msglen |= int(b&0x7F) << shift
  6291  				if b < 0x80 {
  6292  					break
  6293  				}
  6294  			}
  6295  			if msglen < 0 {
  6296  				return ErrInvalidLengthGenesis
  6297  			}
  6298  			postIndex := iNdEx + msglen
  6299  			if postIndex < 0 {
  6300  				return ErrInvalidLengthGenesis
  6301  			}
  6302  			if postIndex > l {
  6303  				return io.ErrUnexpectedEOF
  6304  			}
  6305  			m.Grants = append(m.Grants, &GrantAuthorization{})
  6306  			if err := m.Grants[len(m.Grants)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6307  				return err
  6308  			}
  6309  			iNdEx = postIndex
  6310  		default:
  6311  			iNdEx = preIndex
  6312  			skippy, err := skipGenesis(dAtA[iNdEx:])
  6313  			if err != nil {
  6314  				return err
  6315  			}
  6316  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6317  				return ErrInvalidLengthGenesis
  6318  			}
  6319  			if (iNdEx + skippy) > l {
  6320  				return io.ErrUnexpectedEOF
  6321  			}
  6322  			iNdEx += skippy
  6323  		}
  6324  	}
  6325  
  6326  	if iNdEx > l {
  6327  		return io.ErrUnexpectedEOF
  6328  	}
  6329  	return nil
  6330  }
  6331  func (m *FullActiveGrant) Unmarshal(dAtA []byte) error {
  6332  	l := len(dAtA)
  6333  	iNdEx := 0
  6334  	for iNdEx < l {
  6335  		preIndex := iNdEx
  6336  		var wire uint64
  6337  		for shift := uint(0); ; shift += 7 {
  6338  			if shift >= 64 {
  6339  				return ErrIntOverflowGenesis
  6340  			}
  6341  			if iNdEx >= l {
  6342  				return io.ErrUnexpectedEOF
  6343  			}
  6344  			b := dAtA[iNdEx]
  6345  			iNdEx++
  6346  			wire |= uint64(b&0x7F) << shift
  6347  			if b < 0x80 {
  6348  				break
  6349  			}
  6350  		}
  6351  		fieldNum := int32(wire >> 3)
  6352  		wireType := int(wire & 0x7)
  6353  		if wireType == 4 {
  6354  			return fmt.Errorf("proto: FullActiveGrant: wiretype end group for non-group")
  6355  		}
  6356  		if fieldNum <= 0 {
  6357  			return fmt.Errorf("proto: FullActiveGrant: illegal tag %d (wire type %d)", fieldNum, wire)
  6358  		}
  6359  		switch fieldNum {
  6360  		case 1:
  6361  			if wireType != 2 {
  6362  				return fmt.Errorf("proto: wrong wireType = %d for field Grantee", wireType)
  6363  			}
  6364  			var stringLen uint64
  6365  			for shift := uint(0); ; shift += 7 {
  6366  				if shift >= 64 {
  6367  					return ErrIntOverflowGenesis
  6368  				}
  6369  				if iNdEx >= l {
  6370  					return io.ErrUnexpectedEOF
  6371  				}
  6372  				b := dAtA[iNdEx]
  6373  				iNdEx++
  6374  				stringLen |= uint64(b&0x7F) << shift
  6375  				if b < 0x80 {
  6376  					break
  6377  				}
  6378  			}
  6379  			intStringLen := int(stringLen)
  6380  			if intStringLen < 0 {
  6381  				return ErrInvalidLengthGenesis
  6382  			}
  6383  			postIndex := iNdEx + intStringLen
  6384  			if postIndex < 0 {
  6385  				return ErrInvalidLengthGenesis
  6386  			}
  6387  			if postIndex > l {
  6388  				return io.ErrUnexpectedEOF
  6389  			}
  6390  			m.Grantee = string(dAtA[iNdEx:postIndex])
  6391  			iNdEx = postIndex
  6392  		case 2:
  6393  			if wireType != 2 {
  6394  				return fmt.Errorf("proto: wrong wireType = %d for field ActiveGrant", wireType)
  6395  			}
  6396  			var msglen int
  6397  			for shift := uint(0); ; shift += 7 {
  6398  				if shift >= 64 {
  6399  					return ErrIntOverflowGenesis
  6400  				}
  6401  				if iNdEx >= l {
  6402  					return io.ErrUnexpectedEOF
  6403  				}
  6404  				b := dAtA[iNdEx]
  6405  				iNdEx++
  6406  				msglen |= int(b&0x7F) << shift
  6407  				if b < 0x80 {
  6408  					break
  6409  				}
  6410  			}
  6411  			if msglen < 0 {
  6412  				return ErrInvalidLengthGenesis
  6413  			}
  6414  			postIndex := iNdEx + msglen
  6415  			if postIndex < 0 {
  6416  				return ErrInvalidLengthGenesis
  6417  			}
  6418  			if postIndex > l {
  6419  				return io.ErrUnexpectedEOF
  6420  			}
  6421  			if m.ActiveGrant == nil {
  6422  				m.ActiveGrant = &ActiveGrant{}
  6423  			}
  6424  			if err := m.ActiveGrant.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6425  				return err
  6426  			}
  6427  			iNdEx = postIndex
  6428  		default:
  6429  			iNdEx = preIndex
  6430  			skippy, err := skipGenesis(dAtA[iNdEx:])
  6431  			if err != nil {
  6432  				return err
  6433  			}
  6434  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6435  				return ErrInvalidLengthGenesis
  6436  			}
  6437  			if (iNdEx + skippy) > l {
  6438  				return io.ErrUnexpectedEOF
  6439  			}
  6440  			iNdEx += skippy
  6441  		}
  6442  	}
  6443  
  6444  	if iNdEx > l {
  6445  		return io.ErrUnexpectedEOF
  6446  	}
  6447  	return nil
  6448  }
  6449  func skipGenesis(dAtA []byte) (n int, err error) {
  6450  	l := len(dAtA)
  6451  	iNdEx := 0
  6452  	depth := 0
  6453  	for iNdEx < l {
  6454  		var wire uint64
  6455  		for shift := uint(0); ; shift += 7 {
  6456  			if shift >= 64 {
  6457  				return 0, ErrIntOverflowGenesis
  6458  			}
  6459  			if iNdEx >= l {
  6460  				return 0, io.ErrUnexpectedEOF
  6461  			}
  6462  			b := dAtA[iNdEx]
  6463  			iNdEx++
  6464  			wire |= (uint64(b) & 0x7F) << shift
  6465  			if b < 0x80 {
  6466  				break
  6467  			}
  6468  		}
  6469  		wireType := int(wire & 0x7)
  6470  		switch wireType {
  6471  		case 0:
  6472  			for shift := uint(0); ; shift += 7 {
  6473  				if shift >= 64 {
  6474  					return 0, ErrIntOverflowGenesis
  6475  				}
  6476  				if iNdEx >= l {
  6477  					return 0, io.ErrUnexpectedEOF
  6478  				}
  6479  				iNdEx++
  6480  				if dAtA[iNdEx-1] < 0x80 {
  6481  					break
  6482  				}
  6483  			}
  6484  		case 1:
  6485  			iNdEx += 8
  6486  		case 2:
  6487  			var length int
  6488  			for shift := uint(0); ; shift += 7 {
  6489  				if shift >= 64 {
  6490  					return 0, ErrIntOverflowGenesis
  6491  				}
  6492  				if iNdEx >= l {
  6493  					return 0, io.ErrUnexpectedEOF
  6494  				}
  6495  				b := dAtA[iNdEx]
  6496  				iNdEx++
  6497  				length |= (int(b) & 0x7F) << shift
  6498  				if b < 0x80 {
  6499  					break
  6500  				}
  6501  			}
  6502  			if length < 0 {
  6503  				return 0, ErrInvalidLengthGenesis
  6504  			}
  6505  			iNdEx += length
  6506  		case 3:
  6507  			depth++
  6508  		case 4:
  6509  			if depth == 0 {
  6510  				return 0, ErrUnexpectedEndOfGroupGenesis
  6511  			}
  6512  			depth--
  6513  		case 5:
  6514  			iNdEx += 4
  6515  		default:
  6516  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  6517  		}
  6518  		if iNdEx < 0 {
  6519  			return 0, ErrInvalidLengthGenesis
  6520  		}
  6521  		if depth == 0 {
  6522  			return iNdEx, nil
  6523  		}
  6524  	}
  6525  	return 0, io.ErrUnexpectedEOF
  6526  }
  6527  
  6528  var (
  6529  	ErrInvalidLengthGenesis        = fmt.Errorf("proto: negative length found during unmarshaling")
  6530  	ErrIntOverflowGenesis          = fmt.Errorf("proto: integer overflow")
  6531  	ErrUnexpectedEndOfGroupGenesis = fmt.Errorf("proto: unexpected end of group")
  6532  )