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

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: injective/exchange/v1beta1/proposal.proto
     3  
     4  package types
     5  
     6  import (
     7  	cosmossdk_io_math "cosmossdk.io/math"
     8  	fmt "fmt"
     9  	types "github.com/InjectiveLabs/sdk-go/chain/oracle/types"
    10  	_ "github.com/cosmos/cosmos-proto"
    11  	_ "github.com/cosmos/cosmos-sdk/types"
    12  	_ "github.com/cosmos/cosmos-sdk/types/msgservice"
    13  	_ "github.com/cosmos/cosmos-sdk/types/tx/amino"
    14  	types1 "github.com/cosmos/cosmos-sdk/x/distribution/types"
    15  	_ "github.com/cosmos/gogoproto/gogoproto"
    16  	proto "github.com/cosmos/gogoproto/proto"
    17  	io "io"
    18  	math "math"
    19  	math_bits "math/bits"
    20  )
    21  
    22  // Reference imports to suppress errors if they are not otherwise used.
    23  var _ = proto.Marshal
    24  var _ = fmt.Errorf
    25  var _ = math.Inf
    26  
    27  // This is a compile-time assertion to ensure that this generated file
    28  // is compatible with the proto package it is being compiled against.
    29  // A compilation error at this line likely means your copy of the
    30  // proto package needs to be updated.
    31  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    32  
    33  type ExchangeType int32
    34  
    35  const (
    36  	ExchangeType_EXCHANGE_UNSPECIFIED ExchangeType = 0
    37  	ExchangeType_SPOT                 ExchangeType = 1
    38  	ExchangeType_DERIVATIVES          ExchangeType = 2
    39  )
    40  
    41  var ExchangeType_name = map[int32]string{
    42  	0: "EXCHANGE_UNSPECIFIED",
    43  	1: "SPOT",
    44  	2: "DERIVATIVES",
    45  }
    46  
    47  var ExchangeType_value = map[string]int32{
    48  	"EXCHANGE_UNSPECIFIED": 0,
    49  	"SPOT":                 1,
    50  	"DERIVATIVES":          2,
    51  }
    52  
    53  func (x ExchangeType) String() string {
    54  	return proto.EnumName(ExchangeType_name, int32(x))
    55  }
    56  
    57  func (ExchangeType) EnumDescriptor() ([]byte, []int) {
    58  	return fileDescriptor_32e9ec9b6b22477c, []int{0}
    59  }
    60  
    61  type SpotMarketParamUpdateProposal struct {
    62  	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
    63  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
    64  	MarketId    string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
    65  	// maker_fee_rate defines the trade fee rate for makers on the spot market
    66  	MakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,4,opt,name=maker_fee_rate,json=makerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maker_fee_rate,omitempty"`
    67  	// taker_fee_rate defines the trade fee rate for takers on the spot market
    68  	TakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,5,opt,name=taker_fee_rate,json=takerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"taker_fee_rate,omitempty"`
    69  	// relayer_fee_share_rate defines the relayer fee share rate for the spot
    70  	// market
    71  	RelayerFeeShareRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,6,opt,name=relayer_fee_share_rate,json=relayerFeeShareRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"relayer_fee_share_rate,omitempty"`
    72  	// min_price_tick_size defines the minimum tick size of the order's price and
    73  	// margin
    74  	MinPriceTickSize *cosmossdk_io_math.LegacyDec `protobuf:"bytes,7,opt,name=min_price_tick_size,json=minPriceTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_price_tick_size,omitempty"`
    75  	// min_quantity_tick_size defines the minimum tick size of the order's
    76  	// quantity
    77  	MinQuantityTickSize *cosmossdk_io_math.LegacyDec `protobuf:"bytes,8,opt,name=min_quantity_tick_size,json=minQuantityTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_quantity_tick_size,omitempty"`
    78  	Status              MarketStatus                 `protobuf:"varint,9,opt,name=status,proto3,enum=injective.exchange.v1beta1.MarketStatus" json:"status,omitempty"`
    79  	Ticker              string                       `protobuf:"bytes,10,opt,name=ticker,proto3" json:"ticker,omitempty"`
    80  	// min_notional defines the minimum notional (in quote asset) required for
    81  	// orders in the market
    82  	MinNotional *cosmossdk_io_math.LegacyDec `protobuf:"bytes,11,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional,omitempty"`
    83  	AdminInfo   *AdminInfo                   `protobuf:"bytes,12,opt,name=admin_info,json=adminInfo,proto3" json:"admin_info,omitempty"`
    84  }
    85  
    86  func (m *SpotMarketParamUpdateProposal) Reset()         { *m = SpotMarketParamUpdateProposal{} }
    87  func (m *SpotMarketParamUpdateProposal) String() string { return proto.CompactTextString(m) }
    88  func (*SpotMarketParamUpdateProposal) ProtoMessage()    {}
    89  func (*SpotMarketParamUpdateProposal) Descriptor() ([]byte, []int) {
    90  	return fileDescriptor_32e9ec9b6b22477c, []int{0}
    91  }
    92  func (m *SpotMarketParamUpdateProposal) XXX_Unmarshal(b []byte) error {
    93  	return m.Unmarshal(b)
    94  }
    95  func (m *SpotMarketParamUpdateProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    96  	if deterministic {
    97  		return xxx_messageInfo_SpotMarketParamUpdateProposal.Marshal(b, m, deterministic)
    98  	} else {
    99  		b = b[:cap(b)]
   100  		n, err := m.MarshalToSizedBuffer(b)
   101  		if err != nil {
   102  			return nil, err
   103  		}
   104  		return b[:n], nil
   105  	}
   106  }
   107  func (m *SpotMarketParamUpdateProposal) XXX_Merge(src proto.Message) {
   108  	xxx_messageInfo_SpotMarketParamUpdateProposal.Merge(m, src)
   109  }
   110  func (m *SpotMarketParamUpdateProposal) XXX_Size() int {
   111  	return m.Size()
   112  }
   113  func (m *SpotMarketParamUpdateProposal) XXX_DiscardUnknown() {
   114  	xxx_messageInfo_SpotMarketParamUpdateProposal.DiscardUnknown(m)
   115  }
   116  
   117  var xxx_messageInfo_SpotMarketParamUpdateProposal proto.InternalMessageInfo
   118  
   119  type ExchangeEnableProposal struct {
   120  	Title        string       `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   121  	Description  string       `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   122  	ExchangeType ExchangeType `protobuf:"varint,3,opt,name=exchangeType,proto3,enum=injective.exchange.v1beta1.ExchangeType" json:"exchangeType,omitempty"`
   123  }
   124  
   125  func (m *ExchangeEnableProposal) Reset()         { *m = ExchangeEnableProposal{} }
   126  func (m *ExchangeEnableProposal) String() string { return proto.CompactTextString(m) }
   127  func (*ExchangeEnableProposal) ProtoMessage()    {}
   128  func (*ExchangeEnableProposal) Descriptor() ([]byte, []int) {
   129  	return fileDescriptor_32e9ec9b6b22477c, []int{1}
   130  }
   131  func (m *ExchangeEnableProposal) XXX_Unmarshal(b []byte) error {
   132  	return m.Unmarshal(b)
   133  }
   134  func (m *ExchangeEnableProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   135  	if deterministic {
   136  		return xxx_messageInfo_ExchangeEnableProposal.Marshal(b, m, deterministic)
   137  	} else {
   138  		b = b[:cap(b)]
   139  		n, err := m.MarshalToSizedBuffer(b)
   140  		if err != nil {
   141  			return nil, err
   142  		}
   143  		return b[:n], nil
   144  	}
   145  }
   146  func (m *ExchangeEnableProposal) XXX_Merge(src proto.Message) {
   147  	xxx_messageInfo_ExchangeEnableProposal.Merge(m, src)
   148  }
   149  func (m *ExchangeEnableProposal) XXX_Size() int {
   150  	return m.Size()
   151  }
   152  func (m *ExchangeEnableProposal) XXX_DiscardUnknown() {
   153  	xxx_messageInfo_ExchangeEnableProposal.DiscardUnknown(m)
   154  }
   155  
   156  var xxx_messageInfo_ExchangeEnableProposal proto.InternalMessageInfo
   157  
   158  type BatchExchangeModificationProposal struct {
   159  	Title                                string                                    `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   160  	Description                          string                                    `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   161  	SpotMarketParamUpdateProposals       []*SpotMarketParamUpdateProposal          `protobuf:"bytes,3,rep,name=spot_market_param_update_proposals,json=spotMarketParamUpdateProposals,proto3" json:"spot_market_param_update_proposals,omitempty"`
   162  	DerivativeMarketParamUpdateProposals []*DerivativeMarketParamUpdateProposal    `protobuf:"bytes,4,rep,name=derivative_market_param_update_proposals,json=derivativeMarketParamUpdateProposals,proto3" json:"derivative_market_param_update_proposals,omitempty"`
   163  	SpotMarketLaunchProposals            []*SpotMarketLaunchProposal               `protobuf:"bytes,5,rep,name=spot_market_launch_proposals,json=spotMarketLaunchProposals,proto3" json:"spot_market_launch_proposals,omitempty"`
   164  	PerpetualMarketLaunchProposals       []*PerpetualMarketLaunchProposal          `protobuf:"bytes,6,rep,name=perpetual_market_launch_proposals,json=perpetualMarketLaunchProposals,proto3" json:"perpetual_market_launch_proposals,omitempty"`
   165  	ExpiryFuturesMarketLaunchProposals   []*ExpiryFuturesMarketLaunchProposal      `protobuf:"bytes,7,rep,name=expiry_futures_market_launch_proposals,json=expiryFuturesMarketLaunchProposals,proto3" json:"expiry_futures_market_launch_proposals,omitempty"`
   166  	TradingRewardCampaignUpdateProposal  *TradingRewardCampaignUpdateProposal      `protobuf:"bytes,8,opt,name=trading_reward_campaign_update_proposal,json=tradingRewardCampaignUpdateProposal,proto3" json:"trading_reward_campaign_update_proposal,omitempty"`
   167  	BinaryOptionsMarketLaunchProposals   []*BinaryOptionsMarketLaunchProposal      `protobuf:"bytes,9,rep,name=binary_options_market_launch_proposals,json=binaryOptionsMarketLaunchProposals,proto3" json:"binary_options_market_launch_proposals,omitempty"`
   168  	BinaryOptionsParamUpdateProposals    []*BinaryOptionsMarketParamUpdateProposal `protobuf:"bytes,10,rep,name=binary_options_param_update_proposals,json=binaryOptionsParamUpdateProposals,proto3" json:"binary_options_param_update_proposals,omitempty"`
   169  	DenomDecimalsUpdateProposal          *UpdateDenomDecimalsProposal              `protobuf:"bytes,11,opt,name=denom_decimals_update_proposal,json=denomDecimalsUpdateProposal,proto3" json:"denom_decimals_update_proposal,omitempty"`
   170  	FeeDiscountProposal                  *FeeDiscountProposal                      `protobuf:"bytes,12,opt,name=fee_discount_proposal,json=feeDiscountProposal,proto3" json:"fee_discount_proposal,omitempty"`
   171  	MarketForcedSettlementProposals      []*MarketForcedSettlementProposal         `protobuf:"bytes,13,rep,name=market_forced_settlement_proposals,json=marketForcedSettlementProposals,proto3" json:"market_forced_settlement_proposals,omitempty"`
   172  }
   173  
   174  func (m *BatchExchangeModificationProposal) Reset()         { *m = BatchExchangeModificationProposal{} }
   175  func (m *BatchExchangeModificationProposal) String() string { return proto.CompactTextString(m) }
   176  func (*BatchExchangeModificationProposal) ProtoMessage()    {}
   177  func (*BatchExchangeModificationProposal) Descriptor() ([]byte, []int) {
   178  	return fileDescriptor_32e9ec9b6b22477c, []int{2}
   179  }
   180  func (m *BatchExchangeModificationProposal) XXX_Unmarshal(b []byte) error {
   181  	return m.Unmarshal(b)
   182  }
   183  func (m *BatchExchangeModificationProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   184  	if deterministic {
   185  		return xxx_messageInfo_BatchExchangeModificationProposal.Marshal(b, m, deterministic)
   186  	} else {
   187  		b = b[:cap(b)]
   188  		n, err := m.MarshalToSizedBuffer(b)
   189  		if err != nil {
   190  			return nil, err
   191  		}
   192  		return b[:n], nil
   193  	}
   194  }
   195  func (m *BatchExchangeModificationProposal) XXX_Merge(src proto.Message) {
   196  	xxx_messageInfo_BatchExchangeModificationProposal.Merge(m, src)
   197  }
   198  func (m *BatchExchangeModificationProposal) XXX_Size() int {
   199  	return m.Size()
   200  }
   201  func (m *BatchExchangeModificationProposal) XXX_DiscardUnknown() {
   202  	xxx_messageInfo_BatchExchangeModificationProposal.DiscardUnknown(m)
   203  }
   204  
   205  var xxx_messageInfo_BatchExchangeModificationProposal proto.InternalMessageInfo
   206  
   207  // SpotMarketLaunchProposal defines a SDK message for proposing a new spot
   208  // market through governance
   209  type SpotMarketLaunchProposal struct {
   210  	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   211  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   212  	// Ticker for the spot market.
   213  	Ticker string `protobuf:"bytes,3,opt,name=ticker,proto3" json:"ticker,omitempty"`
   214  	// type of coin to use as the base currency
   215  	BaseDenom string `protobuf:"bytes,4,opt,name=base_denom,json=baseDenom,proto3" json:"base_denom,omitempty"`
   216  	// type of coin to use as the quote currency
   217  	QuoteDenom string `protobuf:"bytes,5,opt,name=quote_denom,json=quoteDenom,proto3" json:"quote_denom,omitempty"`
   218  	// min_price_tick_size defines the minimum tick size of the order's price
   219  	MinPriceTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,6,opt,name=min_price_tick_size,json=minPriceTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_price_tick_size"`
   220  	// min_quantity_tick_size defines the minimum tick size of the order's
   221  	// quantity
   222  	MinQuantityTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,7,opt,name=min_quantity_tick_size,json=minQuantityTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_quantity_tick_size"`
   223  	// maker_fee_rate defines the fee percentage makers pay when trading
   224  	MakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,8,opt,name=maker_fee_rate,json=makerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maker_fee_rate,omitempty"`
   225  	// taker_fee_rate defines the fee percentage takers pay when trading
   226  	TakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,9,opt,name=taker_fee_rate,json=takerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"taker_fee_rate,omitempty"`
   227  	// min_notional defines the minimum notional for orders in the market
   228  	MinNotional cosmossdk_io_math.LegacyDec `protobuf:"bytes,10,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"`
   229  	AdminInfo   *AdminInfo                  `protobuf:"bytes,11,opt,name=admin_info,json=adminInfo,proto3" json:"admin_info,omitempty"`
   230  }
   231  
   232  func (m *SpotMarketLaunchProposal) Reset()         { *m = SpotMarketLaunchProposal{} }
   233  func (m *SpotMarketLaunchProposal) String() string { return proto.CompactTextString(m) }
   234  func (*SpotMarketLaunchProposal) ProtoMessage()    {}
   235  func (*SpotMarketLaunchProposal) Descriptor() ([]byte, []int) {
   236  	return fileDescriptor_32e9ec9b6b22477c, []int{3}
   237  }
   238  func (m *SpotMarketLaunchProposal) XXX_Unmarshal(b []byte) error {
   239  	return m.Unmarshal(b)
   240  }
   241  func (m *SpotMarketLaunchProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   242  	if deterministic {
   243  		return xxx_messageInfo_SpotMarketLaunchProposal.Marshal(b, m, deterministic)
   244  	} else {
   245  		b = b[:cap(b)]
   246  		n, err := m.MarshalToSizedBuffer(b)
   247  		if err != nil {
   248  			return nil, err
   249  		}
   250  		return b[:n], nil
   251  	}
   252  }
   253  func (m *SpotMarketLaunchProposal) XXX_Merge(src proto.Message) {
   254  	xxx_messageInfo_SpotMarketLaunchProposal.Merge(m, src)
   255  }
   256  func (m *SpotMarketLaunchProposal) XXX_Size() int {
   257  	return m.Size()
   258  }
   259  func (m *SpotMarketLaunchProposal) XXX_DiscardUnknown() {
   260  	xxx_messageInfo_SpotMarketLaunchProposal.DiscardUnknown(m)
   261  }
   262  
   263  var xxx_messageInfo_SpotMarketLaunchProposal proto.InternalMessageInfo
   264  
   265  // PerpetualMarketLaunchProposal defines a SDK message for proposing a new
   266  // perpetual futures market through governance
   267  type PerpetualMarketLaunchProposal struct {
   268  	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   269  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   270  	// Ticker for the derivative market.
   271  	Ticker string `protobuf:"bytes,3,opt,name=ticker,proto3" json:"ticker,omitempty"`
   272  	// type of coin to use as the base currency
   273  	QuoteDenom string `protobuf:"bytes,4,opt,name=quote_denom,json=quoteDenom,proto3" json:"quote_denom,omitempty"`
   274  	// Oracle base currency
   275  	OracleBase string `protobuf:"bytes,5,opt,name=oracle_base,json=oracleBase,proto3" json:"oracle_base,omitempty"`
   276  	// Oracle quote currency
   277  	OracleQuote string `protobuf:"bytes,6,opt,name=oracle_quote,json=oracleQuote,proto3" json:"oracle_quote,omitempty"`
   278  	// Scale factor for oracle prices.
   279  	OracleScaleFactor uint32 `protobuf:"varint,7,opt,name=oracle_scale_factor,json=oracleScaleFactor,proto3" json:"oracle_scale_factor,omitempty"`
   280  	// Oracle type
   281  	OracleType types.OracleType `protobuf:"varint,8,opt,name=oracle_type,json=oracleType,proto3,enum=injective.oracle.v1beta1.OracleType" json:"oracle_type,omitempty"`
   282  	// initial_margin_ratio defines the initial margin ratio for the derivative
   283  	// market
   284  	InitialMarginRatio cosmossdk_io_math.LegacyDec `protobuf:"bytes,9,opt,name=initial_margin_ratio,json=initialMarginRatio,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"initial_margin_ratio"`
   285  	// maintenance_margin_ratio defines the maintenance margin ratio for the
   286  	// derivative market
   287  	MaintenanceMarginRatio cosmossdk_io_math.LegacyDec `protobuf:"bytes,10,opt,name=maintenance_margin_ratio,json=maintenanceMarginRatio,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maintenance_margin_ratio"`
   288  	// maker_fee_rate defines the exchange trade fee for makers for the derivative
   289  	// market
   290  	MakerFeeRate cosmossdk_io_math.LegacyDec `protobuf:"bytes,11,opt,name=maker_fee_rate,json=makerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maker_fee_rate"`
   291  	// taker_fee_rate defines the exchange trade fee for takers for the derivative
   292  	// market
   293  	TakerFeeRate cosmossdk_io_math.LegacyDec `protobuf:"bytes,12,opt,name=taker_fee_rate,json=takerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"taker_fee_rate"`
   294  	// min_price_tick_size defines the minimum tick size of the order's price and
   295  	// margin
   296  	MinPriceTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,13,opt,name=min_price_tick_size,json=minPriceTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_price_tick_size"`
   297  	// min_quantity_tick_size defines the minimum tick size of the order's
   298  	// quantity
   299  	MinQuantityTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,14,opt,name=min_quantity_tick_size,json=minQuantityTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_quantity_tick_size"`
   300  	// min_notional defines the minimum notional (in quote asset) required for
   301  	// orders in the market
   302  	MinNotional cosmossdk_io_math.LegacyDec `protobuf:"bytes,15,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"`
   303  	AdminInfo   *AdminInfo                  `protobuf:"bytes,16,opt,name=admin_info,json=adminInfo,proto3" json:"admin_info,omitempty"`
   304  }
   305  
   306  func (m *PerpetualMarketLaunchProposal) Reset()         { *m = PerpetualMarketLaunchProposal{} }
   307  func (m *PerpetualMarketLaunchProposal) String() string { return proto.CompactTextString(m) }
   308  func (*PerpetualMarketLaunchProposal) ProtoMessage()    {}
   309  func (*PerpetualMarketLaunchProposal) Descriptor() ([]byte, []int) {
   310  	return fileDescriptor_32e9ec9b6b22477c, []int{4}
   311  }
   312  func (m *PerpetualMarketLaunchProposal) XXX_Unmarshal(b []byte) error {
   313  	return m.Unmarshal(b)
   314  }
   315  func (m *PerpetualMarketLaunchProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   316  	if deterministic {
   317  		return xxx_messageInfo_PerpetualMarketLaunchProposal.Marshal(b, m, deterministic)
   318  	} else {
   319  		b = b[:cap(b)]
   320  		n, err := m.MarshalToSizedBuffer(b)
   321  		if err != nil {
   322  			return nil, err
   323  		}
   324  		return b[:n], nil
   325  	}
   326  }
   327  func (m *PerpetualMarketLaunchProposal) XXX_Merge(src proto.Message) {
   328  	xxx_messageInfo_PerpetualMarketLaunchProposal.Merge(m, src)
   329  }
   330  func (m *PerpetualMarketLaunchProposal) XXX_Size() int {
   331  	return m.Size()
   332  }
   333  func (m *PerpetualMarketLaunchProposal) XXX_DiscardUnknown() {
   334  	xxx_messageInfo_PerpetualMarketLaunchProposal.DiscardUnknown(m)
   335  }
   336  
   337  var xxx_messageInfo_PerpetualMarketLaunchProposal proto.InternalMessageInfo
   338  
   339  type BinaryOptionsMarketLaunchProposal struct {
   340  	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   341  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   342  	// Ticker for the derivative contract.
   343  	Ticker string `protobuf:"bytes,3,opt,name=ticker,proto3" json:"ticker,omitempty"`
   344  	// Oracle symbol
   345  	OracleSymbol string `protobuf:"bytes,4,opt,name=oracle_symbol,json=oracleSymbol,proto3" json:"oracle_symbol,omitempty"`
   346  	// Oracle Provider
   347  	OracleProvider string `protobuf:"bytes,5,opt,name=oracle_provider,json=oracleProvider,proto3" json:"oracle_provider,omitempty"`
   348  	// Oracle type
   349  	OracleType types.OracleType `protobuf:"varint,6,opt,name=oracle_type,json=oracleType,proto3,enum=injective.oracle.v1beta1.OracleType" json:"oracle_type,omitempty"`
   350  	// Scale factor for oracle prices.
   351  	OracleScaleFactor uint32 `protobuf:"varint,7,opt,name=oracle_scale_factor,json=oracleScaleFactor,proto3" json:"oracle_scale_factor,omitempty"`
   352  	// expiration timestamp
   353  	ExpirationTimestamp int64 `protobuf:"varint,8,opt,name=expiration_timestamp,json=expirationTimestamp,proto3" json:"expiration_timestamp,omitempty"`
   354  	// expiration timestamp
   355  	SettlementTimestamp int64 `protobuf:"varint,9,opt,name=settlement_timestamp,json=settlementTimestamp,proto3" json:"settlement_timestamp,omitempty"`
   356  	// admin of the market
   357  	Admin string `protobuf:"bytes,10,opt,name=admin,proto3" json:"admin,omitempty"`
   358  	// Address of the quote currency denomination for the binary options contract
   359  	QuoteDenom string `protobuf:"bytes,11,opt,name=quote_denom,json=quoteDenom,proto3" json:"quote_denom,omitempty"`
   360  	// maker_fee_rate defines the maker fee rate of a binary options market
   361  	MakerFeeRate cosmossdk_io_math.LegacyDec `protobuf:"bytes,12,opt,name=maker_fee_rate,json=makerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maker_fee_rate"`
   362  	// taker_fee_rate defines the taker fee rate of a derivative market
   363  	TakerFeeRate cosmossdk_io_math.LegacyDec `protobuf:"bytes,13,opt,name=taker_fee_rate,json=takerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"taker_fee_rate"`
   364  	// min_price_tick_size defines the minimum tick size that the price and margin
   365  	// required for orders in the market
   366  	MinPriceTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,14,opt,name=min_price_tick_size,json=minPriceTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_price_tick_size"`
   367  	// min_quantity_tick_size defines the minimum tick size of the quantity
   368  	// required for orders in the market
   369  	MinQuantityTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,15,opt,name=min_quantity_tick_size,json=minQuantityTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_quantity_tick_size"`
   370  	// min_notional defines the minimum notional (in quote asset) required for
   371  	// orders in the market
   372  	MinNotional      cosmossdk_io_math.LegacyDec `protobuf:"bytes,16,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"`
   373  	AdminPermissions uint32                      `protobuf:"varint,17,opt,name=admin_permissions,json=adminPermissions,proto3" json:"admin_permissions,omitempty"`
   374  }
   375  
   376  func (m *BinaryOptionsMarketLaunchProposal) Reset()         { *m = BinaryOptionsMarketLaunchProposal{} }
   377  func (m *BinaryOptionsMarketLaunchProposal) String() string { return proto.CompactTextString(m) }
   378  func (*BinaryOptionsMarketLaunchProposal) ProtoMessage()    {}
   379  func (*BinaryOptionsMarketLaunchProposal) Descriptor() ([]byte, []int) {
   380  	return fileDescriptor_32e9ec9b6b22477c, []int{5}
   381  }
   382  func (m *BinaryOptionsMarketLaunchProposal) XXX_Unmarshal(b []byte) error {
   383  	return m.Unmarshal(b)
   384  }
   385  func (m *BinaryOptionsMarketLaunchProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   386  	if deterministic {
   387  		return xxx_messageInfo_BinaryOptionsMarketLaunchProposal.Marshal(b, m, deterministic)
   388  	} else {
   389  		b = b[:cap(b)]
   390  		n, err := m.MarshalToSizedBuffer(b)
   391  		if err != nil {
   392  			return nil, err
   393  		}
   394  		return b[:n], nil
   395  	}
   396  }
   397  func (m *BinaryOptionsMarketLaunchProposal) XXX_Merge(src proto.Message) {
   398  	xxx_messageInfo_BinaryOptionsMarketLaunchProposal.Merge(m, src)
   399  }
   400  func (m *BinaryOptionsMarketLaunchProposal) XXX_Size() int {
   401  	return m.Size()
   402  }
   403  func (m *BinaryOptionsMarketLaunchProposal) XXX_DiscardUnknown() {
   404  	xxx_messageInfo_BinaryOptionsMarketLaunchProposal.DiscardUnknown(m)
   405  }
   406  
   407  var xxx_messageInfo_BinaryOptionsMarketLaunchProposal proto.InternalMessageInfo
   408  
   409  // ExpiryFuturesMarketLaunchProposal defines a SDK message for proposing a new
   410  // expiry futures market through governance
   411  type ExpiryFuturesMarketLaunchProposal struct {
   412  	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   413  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   414  	// Ticker for the derivative market.
   415  	Ticker string `protobuf:"bytes,3,opt,name=ticker,proto3" json:"ticker,omitempty"`
   416  	// type of coin to use as the quote currency
   417  	QuoteDenom string `protobuf:"bytes,4,opt,name=quote_denom,json=quoteDenom,proto3" json:"quote_denom,omitempty"`
   418  	// Oracle base currency
   419  	OracleBase string `protobuf:"bytes,5,opt,name=oracle_base,json=oracleBase,proto3" json:"oracle_base,omitempty"`
   420  	// Oracle quote currency
   421  	OracleQuote string `protobuf:"bytes,6,opt,name=oracle_quote,json=oracleQuote,proto3" json:"oracle_quote,omitempty"`
   422  	// Scale factor for oracle prices.
   423  	OracleScaleFactor uint32 `protobuf:"varint,7,opt,name=oracle_scale_factor,json=oracleScaleFactor,proto3" json:"oracle_scale_factor,omitempty"`
   424  	// Oracle type
   425  	OracleType types.OracleType `protobuf:"varint,8,opt,name=oracle_type,json=oracleType,proto3,enum=injective.oracle.v1beta1.OracleType" json:"oracle_type,omitempty"`
   426  	// Expiration time of the market
   427  	Expiry int64 `protobuf:"varint,9,opt,name=expiry,proto3" json:"expiry,omitempty"`
   428  	// initial_margin_ratio defines the initial margin ratio for the derivative
   429  	// market
   430  	InitialMarginRatio cosmossdk_io_math.LegacyDec `protobuf:"bytes,10,opt,name=initial_margin_ratio,json=initialMarginRatio,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"initial_margin_ratio"`
   431  	// maintenance_margin_ratio defines the maintenance margin ratio for the
   432  	// derivative market
   433  	MaintenanceMarginRatio cosmossdk_io_math.LegacyDec `protobuf:"bytes,11,opt,name=maintenance_margin_ratio,json=maintenanceMarginRatio,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maintenance_margin_ratio"`
   434  	// maker_fee_rate defines the exchange trade fee for makers for the derivative
   435  	// market
   436  	MakerFeeRate cosmossdk_io_math.LegacyDec `protobuf:"bytes,12,opt,name=maker_fee_rate,json=makerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maker_fee_rate"`
   437  	// taker_fee_rate defines the exchange trade fee for takers for the derivative
   438  	// market
   439  	TakerFeeRate cosmossdk_io_math.LegacyDec `protobuf:"bytes,13,opt,name=taker_fee_rate,json=takerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"taker_fee_rate"`
   440  	// min_price_tick_size defines the minimum tick size of the order's price and
   441  	// margin
   442  	MinPriceTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,14,opt,name=min_price_tick_size,json=minPriceTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_price_tick_size"`
   443  	// min_quantity_tick_size defines the minimum tick size of the order's
   444  	// quantity
   445  	MinQuantityTickSize cosmossdk_io_math.LegacyDec `protobuf:"bytes,15,opt,name=min_quantity_tick_size,json=minQuantityTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_quantity_tick_size"`
   446  	// min_notional defines the minimum notional (in quote asset) required for
   447  	// orders in the market
   448  	MinNotional cosmossdk_io_math.LegacyDec `protobuf:"bytes,16,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional"`
   449  	AdminInfo   *AdminInfo                  `protobuf:"bytes,17,opt,name=admin_info,json=adminInfo,proto3" json:"admin_info,omitempty"`
   450  }
   451  
   452  func (m *ExpiryFuturesMarketLaunchProposal) Reset()         { *m = ExpiryFuturesMarketLaunchProposal{} }
   453  func (m *ExpiryFuturesMarketLaunchProposal) String() string { return proto.CompactTextString(m) }
   454  func (*ExpiryFuturesMarketLaunchProposal) ProtoMessage()    {}
   455  func (*ExpiryFuturesMarketLaunchProposal) Descriptor() ([]byte, []int) {
   456  	return fileDescriptor_32e9ec9b6b22477c, []int{6}
   457  }
   458  func (m *ExpiryFuturesMarketLaunchProposal) XXX_Unmarshal(b []byte) error {
   459  	return m.Unmarshal(b)
   460  }
   461  func (m *ExpiryFuturesMarketLaunchProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   462  	if deterministic {
   463  		return xxx_messageInfo_ExpiryFuturesMarketLaunchProposal.Marshal(b, m, deterministic)
   464  	} else {
   465  		b = b[:cap(b)]
   466  		n, err := m.MarshalToSizedBuffer(b)
   467  		if err != nil {
   468  			return nil, err
   469  		}
   470  		return b[:n], nil
   471  	}
   472  }
   473  func (m *ExpiryFuturesMarketLaunchProposal) XXX_Merge(src proto.Message) {
   474  	xxx_messageInfo_ExpiryFuturesMarketLaunchProposal.Merge(m, src)
   475  }
   476  func (m *ExpiryFuturesMarketLaunchProposal) XXX_Size() int {
   477  	return m.Size()
   478  }
   479  func (m *ExpiryFuturesMarketLaunchProposal) XXX_DiscardUnknown() {
   480  	xxx_messageInfo_ExpiryFuturesMarketLaunchProposal.DiscardUnknown(m)
   481  }
   482  
   483  var xxx_messageInfo_ExpiryFuturesMarketLaunchProposal proto.InternalMessageInfo
   484  
   485  type DerivativeMarketParamUpdateProposal struct {
   486  	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   487  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   488  	MarketId    string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   489  	// initial_margin_ratio defines the initial margin ratio for the derivative
   490  	// market
   491  	InitialMarginRatio *cosmossdk_io_math.LegacyDec `protobuf:"bytes,4,opt,name=initial_margin_ratio,json=initialMarginRatio,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"initial_margin_ratio,omitempty"`
   492  	// maintenance_margin_ratio defines the maintenance margin ratio for the
   493  	// derivative market
   494  	MaintenanceMarginRatio *cosmossdk_io_math.LegacyDec `protobuf:"bytes,5,opt,name=maintenance_margin_ratio,json=maintenanceMarginRatio,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maintenance_margin_ratio,omitempty"`
   495  	// maker_fee_rate defines the exchange trade fee for makers for the derivative
   496  	// market
   497  	MakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,6,opt,name=maker_fee_rate,json=makerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maker_fee_rate,omitempty"`
   498  	// taker_fee_rate defines the exchange trade fee for takers for the derivative
   499  	// market
   500  	TakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,7,opt,name=taker_fee_rate,json=takerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"taker_fee_rate,omitempty"`
   501  	// relayer_fee_share_rate defines the relayer fee share rate for the
   502  	// derivative market
   503  	RelayerFeeShareRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,8,opt,name=relayer_fee_share_rate,json=relayerFeeShareRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"relayer_fee_share_rate,omitempty"`
   504  	// min_price_tick_size defines the minimum tick size of the order's price and
   505  	// margin
   506  	MinPriceTickSize *cosmossdk_io_math.LegacyDec `protobuf:"bytes,9,opt,name=min_price_tick_size,json=minPriceTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_price_tick_size,omitempty"`
   507  	// min_quantity_tick_size defines the minimum tick size of the order's
   508  	// quantity
   509  	MinQuantityTickSize *cosmossdk_io_math.LegacyDec `protobuf:"bytes,10,opt,name=min_quantity_tick_size,json=minQuantityTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_quantity_tick_size,omitempty"`
   510  	// hourly_interest_rate defines the hourly interest rate
   511  	HourlyInterestRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,11,opt,name=HourlyInterestRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"HourlyInterestRate,omitempty"`
   512  	// hourly_funding_rate_cap defines the maximum absolute value of the hourly
   513  	// funding rate
   514  	HourlyFundingRateCap *cosmossdk_io_math.LegacyDec `protobuf:"bytes,12,opt,name=HourlyFundingRateCap,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"HourlyFundingRateCap,omitempty"`
   515  	Status               MarketStatus                 `protobuf:"varint,13,opt,name=status,proto3,enum=injective.exchange.v1beta1.MarketStatus" json:"status,omitempty"`
   516  	OracleParams         *OracleParams                `protobuf:"bytes,14,opt,name=oracle_params,json=oracleParams,proto3" json:"oracle_params,omitempty"`
   517  	Ticker               string                       `protobuf:"bytes,15,opt,name=ticker,proto3" json:"ticker,omitempty"`
   518  	// min_notional defines the minimum notional (in quote asset) required for
   519  	// orders in the market
   520  	MinNotional *cosmossdk_io_math.LegacyDec `protobuf:"bytes,16,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional,omitempty"`
   521  	AdminInfo   *AdminInfo                   `protobuf:"bytes,17,opt,name=admin_info,json=adminInfo,proto3" json:"admin_info,omitempty"`
   522  }
   523  
   524  func (m *DerivativeMarketParamUpdateProposal) Reset()         { *m = DerivativeMarketParamUpdateProposal{} }
   525  func (m *DerivativeMarketParamUpdateProposal) String() string { return proto.CompactTextString(m) }
   526  func (*DerivativeMarketParamUpdateProposal) ProtoMessage()    {}
   527  func (*DerivativeMarketParamUpdateProposal) Descriptor() ([]byte, []int) {
   528  	return fileDescriptor_32e9ec9b6b22477c, []int{7}
   529  }
   530  func (m *DerivativeMarketParamUpdateProposal) XXX_Unmarshal(b []byte) error {
   531  	return m.Unmarshal(b)
   532  }
   533  func (m *DerivativeMarketParamUpdateProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   534  	if deterministic {
   535  		return xxx_messageInfo_DerivativeMarketParamUpdateProposal.Marshal(b, m, deterministic)
   536  	} else {
   537  		b = b[:cap(b)]
   538  		n, err := m.MarshalToSizedBuffer(b)
   539  		if err != nil {
   540  			return nil, err
   541  		}
   542  		return b[:n], nil
   543  	}
   544  }
   545  func (m *DerivativeMarketParamUpdateProposal) XXX_Merge(src proto.Message) {
   546  	xxx_messageInfo_DerivativeMarketParamUpdateProposal.Merge(m, src)
   547  }
   548  func (m *DerivativeMarketParamUpdateProposal) XXX_Size() int {
   549  	return m.Size()
   550  }
   551  func (m *DerivativeMarketParamUpdateProposal) XXX_DiscardUnknown() {
   552  	xxx_messageInfo_DerivativeMarketParamUpdateProposal.DiscardUnknown(m)
   553  }
   554  
   555  var xxx_messageInfo_DerivativeMarketParamUpdateProposal proto.InternalMessageInfo
   556  
   557  type AdminInfo struct {
   558  	Admin            string `protobuf:"bytes,1,opt,name=admin,proto3" json:"admin,omitempty"`
   559  	AdminPermissions uint32 `protobuf:"varint,2,opt,name=admin_permissions,json=adminPermissions,proto3" json:"admin_permissions,omitempty"`
   560  }
   561  
   562  func (m *AdminInfo) Reset()         { *m = AdminInfo{} }
   563  func (m *AdminInfo) String() string { return proto.CompactTextString(m) }
   564  func (*AdminInfo) ProtoMessage()    {}
   565  func (*AdminInfo) Descriptor() ([]byte, []int) {
   566  	return fileDescriptor_32e9ec9b6b22477c, []int{8}
   567  }
   568  func (m *AdminInfo) XXX_Unmarshal(b []byte) error {
   569  	return m.Unmarshal(b)
   570  }
   571  func (m *AdminInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   572  	if deterministic {
   573  		return xxx_messageInfo_AdminInfo.Marshal(b, m, deterministic)
   574  	} else {
   575  		b = b[:cap(b)]
   576  		n, err := m.MarshalToSizedBuffer(b)
   577  		if err != nil {
   578  			return nil, err
   579  		}
   580  		return b[:n], nil
   581  	}
   582  }
   583  func (m *AdminInfo) XXX_Merge(src proto.Message) {
   584  	xxx_messageInfo_AdminInfo.Merge(m, src)
   585  }
   586  func (m *AdminInfo) XXX_Size() int {
   587  	return m.Size()
   588  }
   589  func (m *AdminInfo) XXX_DiscardUnknown() {
   590  	xxx_messageInfo_AdminInfo.DiscardUnknown(m)
   591  }
   592  
   593  var xxx_messageInfo_AdminInfo proto.InternalMessageInfo
   594  
   595  func (m *AdminInfo) GetAdmin() string {
   596  	if m != nil {
   597  		return m.Admin
   598  	}
   599  	return ""
   600  }
   601  
   602  func (m *AdminInfo) GetAdminPermissions() uint32 {
   603  	if m != nil {
   604  		return m.AdminPermissions
   605  	}
   606  	return 0
   607  }
   608  
   609  type MarketForcedSettlementProposal struct {
   610  	Title           string                       `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   611  	Description     string                       `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   612  	MarketId        string                       `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   613  	SettlementPrice *cosmossdk_io_math.LegacyDec `protobuf:"bytes,4,opt,name=settlement_price,json=settlementPrice,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"settlement_price,omitempty"`
   614  }
   615  
   616  func (m *MarketForcedSettlementProposal) Reset()         { *m = MarketForcedSettlementProposal{} }
   617  func (m *MarketForcedSettlementProposal) String() string { return proto.CompactTextString(m) }
   618  func (*MarketForcedSettlementProposal) ProtoMessage()    {}
   619  func (*MarketForcedSettlementProposal) Descriptor() ([]byte, []int) {
   620  	return fileDescriptor_32e9ec9b6b22477c, []int{9}
   621  }
   622  func (m *MarketForcedSettlementProposal) XXX_Unmarshal(b []byte) error {
   623  	return m.Unmarshal(b)
   624  }
   625  func (m *MarketForcedSettlementProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   626  	if deterministic {
   627  		return xxx_messageInfo_MarketForcedSettlementProposal.Marshal(b, m, deterministic)
   628  	} else {
   629  		b = b[:cap(b)]
   630  		n, err := m.MarshalToSizedBuffer(b)
   631  		if err != nil {
   632  			return nil, err
   633  		}
   634  		return b[:n], nil
   635  	}
   636  }
   637  func (m *MarketForcedSettlementProposal) XXX_Merge(src proto.Message) {
   638  	xxx_messageInfo_MarketForcedSettlementProposal.Merge(m, src)
   639  }
   640  func (m *MarketForcedSettlementProposal) XXX_Size() int {
   641  	return m.Size()
   642  }
   643  func (m *MarketForcedSettlementProposal) XXX_DiscardUnknown() {
   644  	xxx_messageInfo_MarketForcedSettlementProposal.DiscardUnknown(m)
   645  }
   646  
   647  var xxx_messageInfo_MarketForcedSettlementProposal proto.InternalMessageInfo
   648  
   649  type UpdateDenomDecimalsProposal struct {
   650  	Title         string           `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   651  	Description   string           `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   652  	DenomDecimals []*DenomDecimals `protobuf:"bytes,3,rep,name=denom_decimals,json=denomDecimals,proto3" json:"denom_decimals,omitempty"`
   653  }
   654  
   655  func (m *UpdateDenomDecimalsProposal) Reset()         { *m = UpdateDenomDecimalsProposal{} }
   656  func (m *UpdateDenomDecimalsProposal) String() string { return proto.CompactTextString(m) }
   657  func (*UpdateDenomDecimalsProposal) ProtoMessage()    {}
   658  func (*UpdateDenomDecimalsProposal) Descriptor() ([]byte, []int) {
   659  	return fileDescriptor_32e9ec9b6b22477c, []int{10}
   660  }
   661  func (m *UpdateDenomDecimalsProposal) XXX_Unmarshal(b []byte) error {
   662  	return m.Unmarshal(b)
   663  }
   664  func (m *UpdateDenomDecimalsProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   665  	if deterministic {
   666  		return xxx_messageInfo_UpdateDenomDecimalsProposal.Marshal(b, m, deterministic)
   667  	} else {
   668  		b = b[:cap(b)]
   669  		n, err := m.MarshalToSizedBuffer(b)
   670  		if err != nil {
   671  			return nil, err
   672  		}
   673  		return b[:n], nil
   674  	}
   675  }
   676  func (m *UpdateDenomDecimalsProposal) XXX_Merge(src proto.Message) {
   677  	xxx_messageInfo_UpdateDenomDecimalsProposal.Merge(m, src)
   678  }
   679  func (m *UpdateDenomDecimalsProposal) XXX_Size() int {
   680  	return m.Size()
   681  }
   682  func (m *UpdateDenomDecimalsProposal) XXX_DiscardUnknown() {
   683  	xxx_messageInfo_UpdateDenomDecimalsProposal.DiscardUnknown(m)
   684  }
   685  
   686  var xxx_messageInfo_UpdateDenomDecimalsProposal proto.InternalMessageInfo
   687  
   688  type BinaryOptionsMarketParamUpdateProposal struct {
   689  	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   690  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   691  	MarketId    string `protobuf:"bytes,3,opt,name=market_id,json=marketId,proto3" json:"market_id,omitempty"`
   692  	// maker_fee_rate defines the exchange trade fee for makers for the derivative
   693  	// market
   694  	MakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,4,opt,name=maker_fee_rate,json=makerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"maker_fee_rate,omitempty"`
   695  	// taker_fee_rate defines the exchange trade fee for takers for the derivative
   696  	// market
   697  	TakerFeeRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,5,opt,name=taker_fee_rate,json=takerFeeRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"taker_fee_rate,omitempty"`
   698  	// relayer_fee_share_rate defines the relayer fee share rate for the
   699  	// derivative market
   700  	RelayerFeeShareRate *cosmossdk_io_math.LegacyDec `protobuf:"bytes,6,opt,name=relayer_fee_share_rate,json=relayerFeeShareRate,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"relayer_fee_share_rate,omitempty"`
   701  	// min_price_tick_size defines the minimum tick size of the order's price and
   702  	// margin
   703  	MinPriceTickSize *cosmossdk_io_math.LegacyDec `protobuf:"bytes,7,opt,name=min_price_tick_size,json=minPriceTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_price_tick_size,omitempty"`
   704  	// min_quantity_tick_size defines the minimum tick size of the order's
   705  	// quantity
   706  	MinQuantityTickSize *cosmossdk_io_math.LegacyDec `protobuf:"bytes,8,opt,name=min_quantity_tick_size,json=minQuantityTickSize,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_quantity_tick_size,omitempty"`
   707  	// expiration timestamp
   708  	ExpirationTimestamp int64 `protobuf:"varint,9,opt,name=expiration_timestamp,json=expirationTimestamp,proto3" json:"expiration_timestamp,omitempty"`
   709  	// expiration timestamp
   710  	SettlementTimestamp int64 `protobuf:"varint,10,opt,name=settlement_timestamp,json=settlementTimestamp,proto3" json:"settlement_timestamp,omitempty"`
   711  	// new price at which market will be settled
   712  	SettlementPrice *cosmossdk_io_math.LegacyDec `protobuf:"bytes,11,opt,name=settlement_price,json=settlementPrice,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"settlement_price,omitempty"`
   713  	// admin of the market
   714  	Admin        string                `protobuf:"bytes,12,opt,name=admin,proto3" json:"admin,omitempty"`
   715  	Status       MarketStatus          `protobuf:"varint,13,opt,name=status,proto3,enum=injective.exchange.v1beta1.MarketStatus" json:"status,omitempty"`
   716  	OracleParams *ProviderOracleParams `protobuf:"bytes,14,opt,name=oracle_params,json=oracleParams,proto3" json:"oracle_params,omitempty"`
   717  	Ticker       string                `protobuf:"bytes,15,opt,name=ticker,proto3" json:"ticker,omitempty"`
   718  	// min_notional defines the minimum notional (in quote asset) required for
   719  	// orders in the market
   720  	MinNotional *cosmossdk_io_math.LegacyDec `protobuf:"bytes,16,opt,name=min_notional,json=minNotional,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"min_notional,omitempty"`
   721  }
   722  
   723  func (m *BinaryOptionsMarketParamUpdateProposal) Reset() {
   724  	*m = BinaryOptionsMarketParamUpdateProposal{}
   725  }
   726  func (m *BinaryOptionsMarketParamUpdateProposal) String() string { return proto.CompactTextString(m) }
   727  func (*BinaryOptionsMarketParamUpdateProposal) ProtoMessage()    {}
   728  func (*BinaryOptionsMarketParamUpdateProposal) Descriptor() ([]byte, []int) {
   729  	return fileDescriptor_32e9ec9b6b22477c, []int{11}
   730  }
   731  func (m *BinaryOptionsMarketParamUpdateProposal) XXX_Unmarshal(b []byte) error {
   732  	return m.Unmarshal(b)
   733  }
   734  func (m *BinaryOptionsMarketParamUpdateProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   735  	if deterministic {
   736  		return xxx_messageInfo_BinaryOptionsMarketParamUpdateProposal.Marshal(b, m, deterministic)
   737  	} else {
   738  		b = b[:cap(b)]
   739  		n, err := m.MarshalToSizedBuffer(b)
   740  		if err != nil {
   741  			return nil, err
   742  		}
   743  		return b[:n], nil
   744  	}
   745  }
   746  func (m *BinaryOptionsMarketParamUpdateProposal) XXX_Merge(src proto.Message) {
   747  	xxx_messageInfo_BinaryOptionsMarketParamUpdateProposal.Merge(m, src)
   748  }
   749  func (m *BinaryOptionsMarketParamUpdateProposal) XXX_Size() int {
   750  	return m.Size()
   751  }
   752  func (m *BinaryOptionsMarketParamUpdateProposal) XXX_DiscardUnknown() {
   753  	xxx_messageInfo_BinaryOptionsMarketParamUpdateProposal.DiscardUnknown(m)
   754  }
   755  
   756  var xxx_messageInfo_BinaryOptionsMarketParamUpdateProposal proto.InternalMessageInfo
   757  
   758  type ProviderOracleParams struct {
   759  	// Oracle base currency
   760  	Symbol string `protobuf:"bytes,1,opt,name=symbol,proto3" json:"symbol,omitempty"`
   761  	// Oracle quote currency
   762  	Provider string `protobuf:"bytes,2,opt,name=provider,proto3" json:"provider,omitempty"`
   763  	// Scale factor for oracle prices.
   764  	OracleScaleFactor uint32 `protobuf:"varint,3,opt,name=oracle_scale_factor,json=oracleScaleFactor,proto3" json:"oracle_scale_factor,omitempty"`
   765  	// Oracle type
   766  	OracleType types.OracleType `protobuf:"varint,4,opt,name=oracle_type,json=oracleType,proto3,enum=injective.oracle.v1beta1.OracleType" json:"oracle_type,omitempty"`
   767  }
   768  
   769  func (m *ProviderOracleParams) Reset()         { *m = ProviderOracleParams{} }
   770  func (m *ProviderOracleParams) String() string { return proto.CompactTextString(m) }
   771  func (*ProviderOracleParams) ProtoMessage()    {}
   772  func (*ProviderOracleParams) Descriptor() ([]byte, []int) {
   773  	return fileDescriptor_32e9ec9b6b22477c, []int{12}
   774  }
   775  func (m *ProviderOracleParams) XXX_Unmarshal(b []byte) error {
   776  	return m.Unmarshal(b)
   777  }
   778  func (m *ProviderOracleParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   779  	if deterministic {
   780  		return xxx_messageInfo_ProviderOracleParams.Marshal(b, m, deterministic)
   781  	} else {
   782  		b = b[:cap(b)]
   783  		n, err := m.MarshalToSizedBuffer(b)
   784  		if err != nil {
   785  			return nil, err
   786  		}
   787  		return b[:n], nil
   788  	}
   789  }
   790  func (m *ProviderOracleParams) XXX_Merge(src proto.Message) {
   791  	xxx_messageInfo_ProviderOracleParams.Merge(m, src)
   792  }
   793  func (m *ProviderOracleParams) XXX_Size() int {
   794  	return m.Size()
   795  }
   796  func (m *ProviderOracleParams) XXX_DiscardUnknown() {
   797  	xxx_messageInfo_ProviderOracleParams.DiscardUnknown(m)
   798  }
   799  
   800  var xxx_messageInfo_ProviderOracleParams proto.InternalMessageInfo
   801  
   802  func (m *ProviderOracleParams) GetSymbol() string {
   803  	if m != nil {
   804  		return m.Symbol
   805  	}
   806  	return ""
   807  }
   808  
   809  func (m *ProviderOracleParams) GetProvider() string {
   810  	if m != nil {
   811  		return m.Provider
   812  	}
   813  	return ""
   814  }
   815  
   816  func (m *ProviderOracleParams) GetOracleScaleFactor() uint32 {
   817  	if m != nil {
   818  		return m.OracleScaleFactor
   819  	}
   820  	return 0
   821  }
   822  
   823  func (m *ProviderOracleParams) GetOracleType() types.OracleType {
   824  	if m != nil {
   825  		return m.OracleType
   826  	}
   827  	return types.OracleType_Unspecified
   828  }
   829  
   830  type OracleParams struct {
   831  	// Oracle base currency
   832  	OracleBase string `protobuf:"bytes,1,opt,name=oracle_base,json=oracleBase,proto3" json:"oracle_base,omitempty"`
   833  	// Oracle quote currency
   834  	OracleQuote string `protobuf:"bytes,2,opt,name=oracle_quote,json=oracleQuote,proto3" json:"oracle_quote,omitempty"`
   835  	// Scale factor for oracle prices.
   836  	OracleScaleFactor uint32 `protobuf:"varint,3,opt,name=oracle_scale_factor,json=oracleScaleFactor,proto3" json:"oracle_scale_factor,omitempty"`
   837  	// Oracle type
   838  	OracleType types.OracleType `protobuf:"varint,4,opt,name=oracle_type,json=oracleType,proto3,enum=injective.oracle.v1beta1.OracleType" json:"oracle_type,omitempty"`
   839  }
   840  
   841  func (m *OracleParams) Reset()         { *m = OracleParams{} }
   842  func (m *OracleParams) String() string { return proto.CompactTextString(m) }
   843  func (*OracleParams) ProtoMessage()    {}
   844  func (*OracleParams) Descriptor() ([]byte, []int) {
   845  	return fileDescriptor_32e9ec9b6b22477c, []int{13}
   846  }
   847  func (m *OracleParams) XXX_Unmarshal(b []byte) error {
   848  	return m.Unmarshal(b)
   849  }
   850  func (m *OracleParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   851  	if deterministic {
   852  		return xxx_messageInfo_OracleParams.Marshal(b, m, deterministic)
   853  	} else {
   854  		b = b[:cap(b)]
   855  		n, err := m.MarshalToSizedBuffer(b)
   856  		if err != nil {
   857  			return nil, err
   858  		}
   859  		return b[:n], nil
   860  	}
   861  }
   862  func (m *OracleParams) XXX_Merge(src proto.Message) {
   863  	xxx_messageInfo_OracleParams.Merge(m, src)
   864  }
   865  func (m *OracleParams) XXX_Size() int {
   866  	return m.Size()
   867  }
   868  func (m *OracleParams) XXX_DiscardUnknown() {
   869  	xxx_messageInfo_OracleParams.DiscardUnknown(m)
   870  }
   871  
   872  var xxx_messageInfo_OracleParams proto.InternalMessageInfo
   873  
   874  func (m *OracleParams) GetOracleBase() string {
   875  	if m != nil {
   876  		return m.OracleBase
   877  	}
   878  	return ""
   879  }
   880  
   881  func (m *OracleParams) GetOracleQuote() string {
   882  	if m != nil {
   883  		return m.OracleQuote
   884  	}
   885  	return ""
   886  }
   887  
   888  func (m *OracleParams) GetOracleScaleFactor() uint32 {
   889  	if m != nil {
   890  		return m.OracleScaleFactor
   891  	}
   892  	return 0
   893  }
   894  
   895  func (m *OracleParams) GetOracleType() types.OracleType {
   896  	if m != nil {
   897  		return m.OracleType
   898  	}
   899  	return types.OracleType_Unspecified
   900  }
   901  
   902  type TradingRewardCampaignLaunchProposal struct {
   903  	Title               string                     `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   904  	Description         string                     `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   905  	CampaignInfo        *TradingRewardCampaignInfo `protobuf:"bytes,3,opt,name=campaign_info,json=campaignInfo,proto3" json:"campaign_info,omitempty"`
   906  	CampaignRewardPools []*CampaignRewardPool      `protobuf:"bytes,4,rep,name=campaign_reward_pools,json=campaignRewardPools,proto3" json:"campaign_reward_pools,omitempty"`
   907  }
   908  
   909  func (m *TradingRewardCampaignLaunchProposal) Reset()         { *m = TradingRewardCampaignLaunchProposal{} }
   910  func (m *TradingRewardCampaignLaunchProposal) String() string { return proto.CompactTextString(m) }
   911  func (*TradingRewardCampaignLaunchProposal) ProtoMessage()    {}
   912  func (*TradingRewardCampaignLaunchProposal) Descriptor() ([]byte, []int) {
   913  	return fileDescriptor_32e9ec9b6b22477c, []int{14}
   914  }
   915  func (m *TradingRewardCampaignLaunchProposal) XXX_Unmarshal(b []byte) error {
   916  	return m.Unmarshal(b)
   917  }
   918  func (m *TradingRewardCampaignLaunchProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   919  	if deterministic {
   920  		return xxx_messageInfo_TradingRewardCampaignLaunchProposal.Marshal(b, m, deterministic)
   921  	} else {
   922  		b = b[:cap(b)]
   923  		n, err := m.MarshalToSizedBuffer(b)
   924  		if err != nil {
   925  			return nil, err
   926  		}
   927  		return b[:n], nil
   928  	}
   929  }
   930  func (m *TradingRewardCampaignLaunchProposal) XXX_Merge(src proto.Message) {
   931  	xxx_messageInfo_TradingRewardCampaignLaunchProposal.Merge(m, src)
   932  }
   933  func (m *TradingRewardCampaignLaunchProposal) XXX_Size() int {
   934  	return m.Size()
   935  }
   936  func (m *TradingRewardCampaignLaunchProposal) XXX_DiscardUnknown() {
   937  	xxx_messageInfo_TradingRewardCampaignLaunchProposal.DiscardUnknown(m)
   938  }
   939  
   940  var xxx_messageInfo_TradingRewardCampaignLaunchProposal proto.InternalMessageInfo
   941  
   942  type TradingRewardCampaignUpdateProposal struct {
   943  	Title                        string                     `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
   944  	Description                  string                     `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   945  	CampaignInfo                 *TradingRewardCampaignInfo `protobuf:"bytes,3,opt,name=campaign_info,json=campaignInfo,proto3" json:"campaign_info,omitempty"`
   946  	CampaignRewardPoolsAdditions []*CampaignRewardPool      `protobuf:"bytes,4,rep,name=campaign_reward_pools_additions,json=campaignRewardPoolsAdditions,proto3" json:"campaign_reward_pools_additions,omitempty"`
   947  	CampaignRewardPoolsUpdates   []*CampaignRewardPool      `protobuf:"bytes,5,rep,name=campaign_reward_pools_updates,json=campaignRewardPoolsUpdates,proto3" json:"campaign_reward_pools_updates,omitempty"`
   948  }
   949  
   950  func (m *TradingRewardCampaignUpdateProposal) Reset()         { *m = TradingRewardCampaignUpdateProposal{} }
   951  func (m *TradingRewardCampaignUpdateProposal) String() string { return proto.CompactTextString(m) }
   952  func (*TradingRewardCampaignUpdateProposal) ProtoMessage()    {}
   953  func (*TradingRewardCampaignUpdateProposal) Descriptor() ([]byte, []int) {
   954  	return fileDescriptor_32e9ec9b6b22477c, []int{15}
   955  }
   956  func (m *TradingRewardCampaignUpdateProposal) XXX_Unmarshal(b []byte) error {
   957  	return m.Unmarshal(b)
   958  }
   959  func (m *TradingRewardCampaignUpdateProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   960  	if deterministic {
   961  		return xxx_messageInfo_TradingRewardCampaignUpdateProposal.Marshal(b, m, deterministic)
   962  	} else {
   963  		b = b[:cap(b)]
   964  		n, err := m.MarshalToSizedBuffer(b)
   965  		if err != nil {
   966  			return nil, err
   967  		}
   968  		return b[:n], nil
   969  	}
   970  }
   971  func (m *TradingRewardCampaignUpdateProposal) XXX_Merge(src proto.Message) {
   972  	xxx_messageInfo_TradingRewardCampaignUpdateProposal.Merge(m, src)
   973  }
   974  func (m *TradingRewardCampaignUpdateProposal) XXX_Size() int {
   975  	return m.Size()
   976  }
   977  func (m *TradingRewardCampaignUpdateProposal) XXX_DiscardUnknown() {
   978  	xxx_messageInfo_TradingRewardCampaignUpdateProposal.DiscardUnknown(m)
   979  }
   980  
   981  var xxx_messageInfo_TradingRewardCampaignUpdateProposal proto.InternalMessageInfo
   982  
   983  type RewardPointUpdate struct {
   984  	AccountAddress string `protobuf:"bytes,1,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"`
   985  	// new_points overwrites the current trading reward points for the account
   986  	NewPoints cosmossdk_io_math.LegacyDec `protobuf:"bytes,12,opt,name=new_points,json=newPoints,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"new_points"`
   987  }
   988  
   989  func (m *RewardPointUpdate) Reset()         { *m = RewardPointUpdate{} }
   990  func (m *RewardPointUpdate) String() string { return proto.CompactTextString(m) }
   991  func (*RewardPointUpdate) ProtoMessage()    {}
   992  func (*RewardPointUpdate) Descriptor() ([]byte, []int) {
   993  	return fileDescriptor_32e9ec9b6b22477c, []int{16}
   994  }
   995  func (m *RewardPointUpdate) XXX_Unmarshal(b []byte) error {
   996  	return m.Unmarshal(b)
   997  }
   998  func (m *RewardPointUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   999  	if deterministic {
  1000  		return xxx_messageInfo_RewardPointUpdate.Marshal(b, m, deterministic)
  1001  	} else {
  1002  		b = b[:cap(b)]
  1003  		n, err := m.MarshalToSizedBuffer(b)
  1004  		if err != nil {
  1005  			return nil, err
  1006  		}
  1007  		return b[:n], nil
  1008  	}
  1009  }
  1010  func (m *RewardPointUpdate) XXX_Merge(src proto.Message) {
  1011  	xxx_messageInfo_RewardPointUpdate.Merge(m, src)
  1012  }
  1013  func (m *RewardPointUpdate) XXX_Size() int {
  1014  	return m.Size()
  1015  }
  1016  func (m *RewardPointUpdate) XXX_DiscardUnknown() {
  1017  	xxx_messageInfo_RewardPointUpdate.DiscardUnknown(m)
  1018  }
  1019  
  1020  var xxx_messageInfo_RewardPointUpdate proto.InternalMessageInfo
  1021  
  1022  func (m *RewardPointUpdate) GetAccountAddress() string {
  1023  	if m != nil {
  1024  		return m.AccountAddress
  1025  	}
  1026  	return ""
  1027  }
  1028  
  1029  type TradingRewardPendingPointsUpdateProposal struct {
  1030  	Title                string               `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
  1031  	Description          string               `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
  1032  	PendingPoolTimestamp int64                `protobuf:"varint,3,opt,name=pending_pool_timestamp,json=pendingPoolTimestamp,proto3" json:"pending_pool_timestamp,omitempty"`
  1033  	RewardPointUpdates   []*RewardPointUpdate `protobuf:"bytes,4,rep,name=reward_point_updates,json=rewardPointUpdates,proto3" json:"reward_point_updates,omitempty"`
  1034  }
  1035  
  1036  func (m *TradingRewardPendingPointsUpdateProposal) Reset() {
  1037  	*m = TradingRewardPendingPointsUpdateProposal{}
  1038  }
  1039  func (m *TradingRewardPendingPointsUpdateProposal) String() string { return proto.CompactTextString(m) }
  1040  func (*TradingRewardPendingPointsUpdateProposal) ProtoMessage()    {}
  1041  func (*TradingRewardPendingPointsUpdateProposal) Descriptor() ([]byte, []int) {
  1042  	return fileDescriptor_32e9ec9b6b22477c, []int{17}
  1043  }
  1044  func (m *TradingRewardPendingPointsUpdateProposal) XXX_Unmarshal(b []byte) error {
  1045  	return m.Unmarshal(b)
  1046  }
  1047  func (m *TradingRewardPendingPointsUpdateProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1048  	if deterministic {
  1049  		return xxx_messageInfo_TradingRewardPendingPointsUpdateProposal.Marshal(b, m, deterministic)
  1050  	} else {
  1051  		b = b[:cap(b)]
  1052  		n, err := m.MarshalToSizedBuffer(b)
  1053  		if err != nil {
  1054  			return nil, err
  1055  		}
  1056  		return b[:n], nil
  1057  	}
  1058  }
  1059  func (m *TradingRewardPendingPointsUpdateProposal) XXX_Merge(src proto.Message) {
  1060  	xxx_messageInfo_TradingRewardPendingPointsUpdateProposal.Merge(m, src)
  1061  }
  1062  func (m *TradingRewardPendingPointsUpdateProposal) XXX_Size() int {
  1063  	return m.Size()
  1064  }
  1065  func (m *TradingRewardPendingPointsUpdateProposal) XXX_DiscardUnknown() {
  1066  	xxx_messageInfo_TradingRewardPendingPointsUpdateProposal.DiscardUnknown(m)
  1067  }
  1068  
  1069  var xxx_messageInfo_TradingRewardPendingPointsUpdateProposal proto.InternalMessageInfo
  1070  
  1071  type FeeDiscountProposal struct {
  1072  	Title       string               `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
  1073  	Description string               `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
  1074  	Schedule    *FeeDiscountSchedule `protobuf:"bytes,3,opt,name=schedule,proto3" json:"schedule,omitempty"`
  1075  }
  1076  
  1077  func (m *FeeDiscountProposal) Reset()         { *m = FeeDiscountProposal{} }
  1078  func (m *FeeDiscountProposal) String() string { return proto.CompactTextString(m) }
  1079  func (*FeeDiscountProposal) ProtoMessage()    {}
  1080  func (*FeeDiscountProposal) Descriptor() ([]byte, []int) {
  1081  	return fileDescriptor_32e9ec9b6b22477c, []int{18}
  1082  }
  1083  func (m *FeeDiscountProposal) XXX_Unmarshal(b []byte) error {
  1084  	return m.Unmarshal(b)
  1085  }
  1086  func (m *FeeDiscountProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1087  	if deterministic {
  1088  		return xxx_messageInfo_FeeDiscountProposal.Marshal(b, m, deterministic)
  1089  	} else {
  1090  		b = b[:cap(b)]
  1091  		n, err := m.MarshalToSizedBuffer(b)
  1092  		if err != nil {
  1093  			return nil, err
  1094  		}
  1095  		return b[:n], nil
  1096  	}
  1097  }
  1098  func (m *FeeDiscountProposal) XXX_Merge(src proto.Message) {
  1099  	xxx_messageInfo_FeeDiscountProposal.Merge(m, src)
  1100  }
  1101  func (m *FeeDiscountProposal) XXX_Size() int {
  1102  	return m.Size()
  1103  }
  1104  func (m *FeeDiscountProposal) XXX_DiscardUnknown() {
  1105  	xxx_messageInfo_FeeDiscountProposal.DiscardUnknown(m)
  1106  }
  1107  
  1108  var xxx_messageInfo_FeeDiscountProposal proto.InternalMessageInfo
  1109  
  1110  type BatchCommunityPoolSpendProposal struct {
  1111  	Title       string                               `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
  1112  	Description string                               `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
  1113  	Proposals   []*types1.CommunityPoolSpendProposal `protobuf:"bytes,3,rep,name=proposals,proto3" json:"proposals,omitempty"`
  1114  }
  1115  
  1116  func (m *BatchCommunityPoolSpendProposal) Reset()         { *m = BatchCommunityPoolSpendProposal{} }
  1117  func (m *BatchCommunityPoolSpendProposal) String() string { return proto.CompactTextString(m) }
  1118  func (*BatchCommunityPoolSpendProposal) ProtoMessage()    {}
  1119  func (*BatchCommunityPoolSpendProposal) Descriptor() ([]byte, []int) {
  1120  	return fileDescriptor_32e9ec9b6b22477c, []int{19}
  1121  }
  1122  func (m *BatchCommunityPoolSpendProposal) XXX_Unmarshal(b []byte) error {
  1123  	return m.Unmarshal(b)
  1124  }
  1125  func (m *BatchCommunityPoolSpendProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1126  	if deterministic {
  1127  		return xxx_messageInfo_BatchCommunityPoolSpendProposal.Marshal(b, m, deterministic)
  1128  	} else {
  1129  		b = b[:cap(b)]
  1130  		n, err := m.MarshalToSizedBuffer(b)
  1131  		if err != nil {
  1132  			return nil, err
  1133  		}
  1134  		return b[:n], nil
  1135  	}
  1136  }
  1137  func (m *BatchCommunityPoolSpendProposal) XXX_Merge(src proto.Message) {
  1138  	xxx_messageInfo_BatchCommunityPoolSpendProposal.Merge(m, src)
  1139  }
  1140  func (m *BatchCommunityPoolSpendProposal) XXX_Size() int {
  1141  	return m.Size()
  1142  }
  1143  func (m *BatchCommunityPoolSpendProposal) XXX_DiscardUnknown() {
  1144  	xxx_messageInfo_BatchCommunityPoolSpendProposal.DiscardUnknown(m)
  1145  }
  1146  
  1147  var xxx_messageInfo_BatchCommunityPoolSpendProposal proto.InternalMessageInfo
  1148  
  1149  // AtomicMarketOrderFeeMultiplierScheduleProposal defines a SDK message for
  1150  // proposing new atomic take fee multipliers for specified markets
  1151  type AtomicMarketOrderFeeMultiplierScheduleProposal struct {
  1152  	Title                string                 `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
  1153  	Description          string                 `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
  1154  	MarketFeeMultipliers []*MarketFeeMultiplier `protobuf:"bytes,3,rep,name=market_fee_multipliers,json=marketFeeMultipliers,proto3" json:"market_fee_multipliers,omitempty"`
  1155  }
  1156  
  1157  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) Reset() {
  1158  	*m = AtomicMarketOrderFeeMultiplierScheduleProposal{}
  1159  }
  1160  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) String() string {
  1161  	return proto.CompactTextString(m)
  1162  }
  1163  func (*AtomicMarketOrderFeeMultiplierScheduleProposal) ProtoMessage() {}
  1164  func (*AtomicMarketOrderFeeMultiplierScheduleProposal) Descriptor() ([]byte, []int) {
  1165  	return fileDescriptor_32e9ec9b6b22477c, []int{20}
  1166  }
  1167  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) XXX_Unmarshal(b []byte) error {
  1168  	return m.Unmarshal(b)
  1169  }
  1170  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1171  	if deterministic {
  1172  		return xxx_messageInfo_AtomicMarketOrderFeeMultiplierScheduleProposal.Marshal(b, m, deterministic)
  1173  	} else {
  1174  		b = b[:cap(b)]
  1175  		n, err := m.MarshalToSizedBuffer(b)
  1176  		if err != nil {
  1177  			return nil, err
  1178  		}
  1179  		return b[:n], nil
  1180  	}
  1181  }
  1182  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) XXX_Merge(src proto.Message) {
  1183  	xxx_messageInfo_AtomicMarketOrderFeeMultiplierScheduleProposal.Merge(m, src)
  1184  }
  1185  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) XXX_Size() int {
  1186  	return m.Size()
  1187  }
  1188  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) XXX_DiscardUnknown() {
  1189  	xxx_messageInfo_AtomicMarketOrderFeeMultiplierScheduleProposal.DiscardUnknown(m)
  1190  }
  1191  
  1192  var xxx_messageInfo_AtomicMarketOrderFeeMultiplierScheduleProposal proto.InternalMessageInfo
  1193  
  1194  func init() {
  1195  	proto.RegisterEnum("injective.exchange.v1beta1.ExchangeType", ExchangeType_name, ExchangeType_value)
  1196  	proto.RegisterType((*SpotMarketParamUpdateProposal)(nil), "injective.exchange.v1beta1.SpotMarketParamUpdateProposal")
  1197  	proto.RegisterType((*ExchangeEnableProposal)(nil), "injective.exchange.v1beta1.ExchangeEnableProposal")
  1198  	proto.RegisterType((*BatchExchangeModificationProposal)(nil), "injective.exchange.v1beta1.BatchExchangeModificationProposal")
  1199  	proto.RegisterType((*SpotMarketLaunchProposal)(nil), "injective.exchange.v1beta1.SpotMarketLaunchProposal")
  1200  	proto.RegisterType((*PerpetualMarketLaunchProposal)(nil), "injective.exchange.v1beta1.PerpetualMarketLaunchProposal")
  1201  	proto.RegisterType((*BinaryOptionsMarketLaunchProposal)(nil), "injective.exchange.v1beta1.BinaryOptionsMarketLaunchProposal")
  1202  	proto.RegisterType((*ExpiryFuturesMarketLaunchProposal)(nil), "injective.exchange.v1beta1.ExpiryFuturesMarketLaunchProposal")
  1203  	proto.RegisterType((*DerivativeMarketParamUpdateProposal)(nil), "injective.exchange.v1beta1.DerivativeMarketParamUpdateProposal")
  1204  	proto.RegisterType((*AdminInfo)(nil), "injective.exchange.v1beta1.AdminInfo")
  1205  	proto.RegisterType((*MarketForcedSettlementProposal)(nil), "injective.exchange.v1beta1.MarketForcedSettlementProposal")
  1206  	proto.RegisterType((*UpdateDenomDecimalsProposal)(nil), "injective.exchange.v1beta1.UpdateDenomDecimalsProposal")
  1207  	proto.RegisterType((*BinaryOptionsMarketParamUpdateProposal)(nil), "injective.exchange.v1beta1.BinaryOptionsMarketParamUpdateProposal")
  1208  	proto.RegisterType((*ProviderOracleParams)(nil), "injective.exchange.v1beta1.ProviderOracleParams")
  1209  	proto.RegisterType((*OracleParams)(nil), "injective.exchange.v1beta1.OracleParams")
  1210  	proto.RegisterType((*TradingRewardCampaignLaunchProposal)(nil), "injective.exchange.v1beta1.TradingRewardCampaignLaunchProposal")
  1211  	proto.RegisterType((*TradingRewardCampaignUpdateProposal)(nil), "injective.exchange.v1beta1.TradingRewardCampaignUpdateProposal")
  1212  	proto.RegisterType((*RewardPointUpdate)(nil), "injective.exchange.v1beta1.RewardPointUpdate")
  1213  	proto.RegisterType((*TradingRewardPendingPointsUpdateProposal)(nil), "injective.exchange.v1beta1.TradingRewardPendingPointsUpdateProposal")
  1214  	proto.RegisterType((*FeeDiscountProposal)(nil), "injective.exchange.v1beta1.FeeDiscountProposal")
  1215  	proto.RegisterType((*BatchCommunityPoolSpendProposal)(nil), "injective.exchange.v1beta1.BatchCommunityPoolSpendProposal")
  1216  	proto.RegisterType((*AtomicMarketOrderFeeMultiplierScheduleProposal)(nil), "injective.exchange.v1beta1.AtomicMarketOrderFeeMultiplierScheduleProposal")
  1217  }
  1218  
  1219  func init() {
  1220  	proto.RegisterFile("injective/exchange/v1beta1/proposal.proto", fileDescriptor_32e9ec9b6b22477c)
  1221  }
  1222  
  1223  var fileDescriptor_32e9ec9b6b22477c = []byte{
  1224  	// 2444 bytes of a gzipped FileDescriptorProto
  1225  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0xcb, 0x8f, 0x1b, 0x49,
  1226  	0xfd, 0x9f, 0x9e, 0x99, 0x4c, 0xec, 0xb2, 0xe7, 0xd5, 0xe3, 0x9d, 0x9f, 0x77, 0x92, 0x78, 0x66,
  1227  	0x3a, 0xaf, 0xd9, 0xfc, 0x36, 0x36, 0x09, 0x8b, 0x22, 0x2c, 0x21, 0x98, 0xe7, 0xee, 0x88, 0x64,
  1228  	0xe2, 0xb4, 0x67, 0x76, 0x57, 0x11, 0xa8, 0x55, 0xee, 0xae, 0x99, 0x29, 0xe2, 0x7e, 0xa4, 0xab,
  1229  	0x3c, 0xc9, 0xac, 0x38, 0x70, 0x60, 0x05, 0xca, 0x09, 0x10, 0x0f, 0x71, 0x88, 0xb4, 0x27, 0xce,
  1230  	0x48, 0xf0, 0x0f, 0xc0, 0x01, 0x2d, 0x2b, 0x0e, 0x2b, 0x71, 0x00, 0x71, 0x58, 0xa1, 0x44, 0x08,
  1231  	0xfe, 0x02, 0xc4, 0x81, 0x03, 0xea, 0xaa, 0xea, 0x76, 0xdb, 0x6e, 0xb7, 0xdb, 0x1e, 0x9b, 0x3d,
  1232  	0x90, 0x4b, 0xe2, 0xfe, 0xd6, 0xb7, 0x3e, 0xf5, 0xad, 0xef, 0xab, 0xbe, 0xf5, 0x18, 0xf0, 0x06,
  1233  	0xb6, 0xbe, 0x85, 0x74, 0x8a, 0x4f, 0x50, 0x09, 0x3d, 0xd5, 0x8f, 0xa1, 0x75, 0x84, 0x4a, 0x27,
  1234  	0xb7, 0x6a, 0x88, 0xc2, 0x5b, 0x25, 0xc7, 0xb5, 0x1d, 0x9b, 0xc0, 0x7a, 0xd1, 0x71, 0x6d, 0x6a,
  1235  	0xcb, 0x4b, 0x01, 0x6b, 0xd1, 0x67, 0x2d, 0x0a, 0xd6, 0xa5, 0x82, 0x6e, 0x13, 0xd3, 0x26, 0xa5,
  1236  	0x1a, 0x24, 0xcd, 0xfe, 0xba, 0x8d, 0x2d, 0xde, 0x77, 0xa9, 0x28, 0xda, 0x0d, 0x4c, 0xa8, 0x8b,
  1237  	0x6b, 0x0d, 0x8a, 0x6d, 0x2b, 0xe0, 0x0b, 0x13, 0x05, 0xff, 0xff, 0x09, 0x7e, 0x93, 0x1c, 0x95,
  1238  	0x4e, 0x6e, 0x79, 0xff, 0x89, 0x86, 0xd7, 0x79, 0x83, 0xc6, 0xbe, 0x4a, 0xfc, 0x43, 0x34, 0xe5,
  1239  	0x8e, 0xec, 0x23, 0x9b, 0xd3, 0xbd, 0x5f, 0x82, 0x1a, 0x37, 0xc1, 0x60, 0x1a, 0x9c, 0xf5, 0x6a,
  1240  	0x93, 0xd5, 0x76, 0xa1, 0x5e, 0x6f, 0x32, 0xf2, 0x4f, 0xc1, 0x36, 0x0f, 0x4d, 0x6c, 0xd9, 0x25,
  1241  	0xf6, 0x2f, 0x27, 0x29, 0x7f, 0x9c, 0x02, 0x97, 0xaa, 0x8e, 0x4d, 0xef, 0x41, 0xf7, 0x11, 0xa2,
  1242  	0x15, 0xe8, 0x42, 0xf3, 0xc0, 0x31, 0x20, 0x45, 0x15, 0xa1, 0x42, 0x39, 0x07, 0xce, 0x51, 0x4c,
  1243  	0xeb, 0x28, 0x2f, 0xad, 0x48, 0x6b, 0x69, 0x95, 0x7f, 0xc8, 0x2b, 0x20, 0x63, 0x20, 0xa2, 0xbb,
  1244  	0xd8, 0xf1, 0xe6, 0x9e, 0x1f, 0x67, 0x6d, 0x61, 0x92, 0x7c, 0x01, 0xa4, 0x4d, 0x06, 0xaa, 0x61,
  1245  	0x23, 0x3f, 0xc1, 0xda, 0x53, 0x9c, 0xb0, 0x6b, 0xc8, 0xbb, 0x60, 0xc6, 0x84, 0x8f, 0x90, 0xab,
  1246  	0x1d, 0x22, 0xa4, 0xb9, 0x90, 0xa2, 0xfc, 0xa4, 0xc7, 0xb1, 0x71, 0xf9, 0xe3, 0xcf, 0x96, 0xa5,
  1247  	0xbf, 0x7c, 0xb6, 0x7c, 0x81, 0xeb, 0x87, 0x18, 0x8f, 0x8a, 0xd8, 0x2e, 0x99, 0x90, 0x1e, 0x17,
  1248  	0xef, 0xa2, 0x23, 0xa8, 0x9f, 0x6e, 0x21, 0x5d, 0xcd, 0xb2, 0xae, 0x3b, 0x08, 0xa9, 0x90, 0x22,
  1249  	0x0f, 0x8a, 0xb6, 0x42, 0x9d, 0xeb, 0x03, 0x8a, 0x86, 0xa1, 0xde, 0x07, 0x8b, 0x2e, 0xaa, 0xc3,
  1250  	0x53, 0x01, 0x46, 0x8e, 0xa1, 0x2b, 0x20, 0xa7, 0x92, 0x43, 0x2e, 0x08, 0x88, 0x1d, 0x84, 0xaa,
  1251  	0x1e, 0x00, 0x43, 0x56, 0xc1, 0x82, 0x89, 0x2d, 0xcd, 0x71, 0xb1, 0x8e, 0x34, 0x8a, 0xf5, 0x47,
  1252  	0x1a, 0xc1, 0x1f, 0xa0, 0xfc, 0xf9, 0xe4, 0xb0, 0x73, 0x26, 0xb6, 0x2a, 0x5e, 0xf7, 0x7d, 0xac,
  1253  	0x3f, 0xaa, 0xe2, 0x0f, 0x98, 0xb4, 0x1e, 0xe6, 0xe3, 0x06, 0xb4, 0x28, 0xa6, 0xa7, 0x21, 0xd8,
  1254  	0x54, 0x1f, 0xd2, 0x9a, 0xd8, 0x7a, 0x20, 0x10, 0x02, 0xe4, 0xaf, 0x81, 0x29, 0x42, 0x21, 0x6d,
  1255  	0x90, 0x7c, 0x7a, 0x45, 0x5a, 0x9b, 0xb9, 0xbd, 0x56, 0xec, 0x1e, 0x40, 0x45, 0xee, 0x39, 0x55,
  1256  	0xc6, 0xaf, 0x8a, 0x7e, 0xf2, 0x45, 0x30, 0xe5, 0x89, 0x83, 0xdc, 0x3c, 0x60, 0xb2, 0x4c, 0x7a,
  1257  	0xb2, 0xa8, 0x82, 0x26, 0xef, 0x80, 0xac, 0x27, 0xb9, 0x65, 0x7b, 0x8e, 0x02, 0xeb, 0xf9, 0x4c,
  1258  	0x72, 0x79, 0x33, 0x26, 0xb6, 0xf6, 0x44, 0x3f, 0x79, 0x0b, 0x00, 0x68, 0x78, 0x48, 0xd8, 0x3a,
  1259  	0xb4, 0xf3, 0xd9, 0x15, 0x69, 0x2d, 0x73, 0xfb, 0x6a, 0x9c, 0xac, 0xeb, 0x1e, 0xf7, 0xae, 0x75,
  1260  	0x68, 0xab, 0x69, 0xe8, 0xff, 0x2c, 0x3f, 0xf8, 0xfe, 0x47, 0xcb, 0x63, 0xff, 0xf8, 0x68, 0x79,
  1261  	0xec, 0x93, 0x5f, 0xdf, 0x5c, 0x12, 0x71, 0x79, 0x64, 0x9f, 0x04, 0x9d, 0x36, 0x6d, 0x8b, 0x22,
  1262  	0x8b, 0x3e, 0xfb, 0xfb, 0x2f, 0x6f, 0x5c, 0x0b, 0x02, 0x31, 0x36, 0x66, 0x94, 0x3f, 0x48, 0x60,
  1263  	0x71, 0x5b, 0xb0, 0x6e, 0x5b, 0xb0, 0x56, 0x3f, 0x7b, 0x38, 0xdd, 0x05, 0x59, 0x7f, 0xf0, 0xfd,
  1264  	0x53, 0x07, 0xb1, 0x88, 0xea, 0x61, 0x99, 0xed, 0x10, 0xbf, 0xda, 0xd2, 0xbb, 0xfc, 0xa6, 0x3f,
  1265  	0x67, 0x6f, 0x56, 0xcb, 0xc1, 0xac, 0xa2, 0x65, 0x56, 0x7e, 0x3a, 0x0d, 0x56, 0x37, 0x20, 0xd5,
  1266  	0x8f, 0xfd, 0xf6, 0x7b, 0xb6, 0x81, 0x0f, 0xb1, 0x0e, 0x3d, 0xc9, 0xce, 0x3c, 0xb3, 0x0f, 0x25,
  1267  	0xa0, 0x10, 0xc7, 0xa6, 0x9a, 0x48, 0x17, 0x8e, 0xa7, 0x50, 0xad, 0xc1, 0x34, 0xaa, 0xf9, 0x99,
  1268  	0x9c, 0xe4, 0x27, 0x56, 0x26, 0xd6, 0x32, 0xb7, 0xbf, 0x1c, 0x37, 0xe1, 0x58, 0xa3, 0xa8, 0x05,
  1269  	0x12, 0xd7, 0x4c, 0xe4, 0x9f, 0x49, 0x60, 0xcd, 0x40, 0x2e, 0x3e, 0x81, 0x1e, 0x7a, 0x0f, 0x69,
  1270  	0x26, 0x99, 0x34, 0x5f, 0x8d, 0x93, 0x66, 0x2b, 0xc0, 0xea, 0x2e, 0xd3, 0x15, 0xa3, 0x37, 0x13,
  1271  	0x91, 0x1b, 0xe0, 0x62, 0x58, 0x41, 0x75, 0xd8, 0xb0, 0xf4, 0xe3, 0x90, 0x30, 0xe7, 0x98, 0x30,
  1272  	0x6f, 0x25, 0x53, 0xcd, 0x5d, 0xd6, 0x3b, 0x90, 0xe0, 0x75, 0xd2, 0xa5, 0x85, 0xc8, 0xdf, 0x95,
  1273  	0xc0, 0xaa, 0x83, 0x5c, 0x07, 0xd1, 0x06, 0xac, 0x77, 0x1d, 0x7c, 0xaa, 0xb7, 0x5d, 0x2a, 0x3e,
  1274  	0x48, 0xa4, 0x04, 0x05, 0x27, 0xae, 0x99, 0xc8, 0x3f, 0x94, 0xc0, 0x35, 0xf4, 0xd4, 0xc1, 0xee,
  1275  	0xa9, 0x76, 0xd8, 0xa0, 0x0d, 0x17, 0x91, 0xae, 0xb2, 0x9c, 0x67, 0xb2, 0x7c, 0x25, 0x3e, 0x28,
  1276  	0x3c, 0xa4, 0x1d, 0x0e, 0x14, 0x29, 0x8f, 0x82, 0x7a, 0xb1, 0x10, 0xf9, 0x27, 0x12, 0xb8, 0x4e,
  1277  	0x5d, 0x68, 0x60, 0xeb, 0x48, 0x73, 0xd1, 0x13, 0xe8, 0x1a, 0x9a, 0x0e, 0x4d, 0x07, 0xe2, 0x23,
  1278  	0xab, 0xdd, 0x57, 0x58, 0x36, 0xee, 0xe1, 0x2a, 0xfb, 0x1c, 0x4a, 0x65, 0x48, 0x9b, 0x02, 0xa8,
  1279  	0xcd, 0x55, 0x2e, 0xd3, 0xde, 0x4c, 0x4c, 0x57, 0x35, 0x6c, 0x41, 0xf7, 0x54, 0xb3, 0x59, 0x74,
  1280  	0x75, 0xd7, 0x55, 0xba, 0xb7, 0xae, 0x36, 0x18, 0xd2, 0x7d, 0x0e, 0x14, 0xad, 0xab, 0x5a, 0x2f,
  1281  	0x16, 0x22, 0xff, 0x58, 0x02, 0x57, 0xdb, 0x64, 0xea, 0x12, 0x54, 0x80, 0x89, 0xb4, 0xd1, 0xa7,
  1282  	0x48, 0x51, 0x71, 0xb5, 0xda, 0x22, 0x57, 0x64, 0x50, 0x7d, 0x1b, 0x14, 0x0c, 0x64, 0xd9, 0xa6,
  1283  	0x66, 0x20, 0x1d, 0x9b, 0xb0, 0x4e, 0x3a, 0x0c, 0x97, 0x61, 0x86, 0xbb, 0x13, 0x27, 0x0e, 0x07,
  1284  	0xdd, 0xf2, 0x70, 0xb6, 0x04, 0x4c, 0x20, 0xc3, 0x05, 0x23, 0x4c, 0x6e, 0x33, 0x94, 0x0e, 0x5e,
  1285  	0xf3, 0x4a, 0x0c, 0x03, 0x13, 0xdd, 0x6e, 0x58, 0xb4, 0x39, 0x28, 0x5f, 0xc5, 0x4a, 0x71, 0x83,
  1286  	0xee, 0x20, 0xb4, 0x25, 0xfa, 0x05, 0x83, 0x2d, 0x1c, 0x76, 0x12, 0xe5, 0xef, 0x49, 0x40, 0x11,
  1287  	0xe6, 0x3f, 0xb4, 0x5d, 0x1d, 0x19, 0x1a, 0x41, 0x94, 0xd6, 0x91, 0x89, 0x42, 0x23, 0x92, 0xfc,
  1288  	0x34, 0x53, 0x7b, 0xb9, 0xf7, 0x22, 0xbf, 0xc3, 0x40, 0xaa, 0x01, 0x46, 0x30, 0xfa, 0xb2, 0x19,
  1289  	0xdb, 0x4e, 0xca, 0x07, 0xc9, 0xd7, 0xd8, 0x1b, 0xc1, 0x6a, 0xd4, 0x73, 0xc9, 0x51, 0x3e, 0x39,
  1290  	0x07, 0xf2, 0xdd, 0x32, 0xdb, 0xc0, 0xeb, 0xd1, 0x62, 0x50, 0xbb, 0xf0, 0xaa, 0xd5, 0xaf, 0x5a,
  1291  	0x2e, 0x01, 0xe0, 0x6d, 0x12, 0x34, 0x66, 0x56, 0x5e, 0xaf, 0xaa, 0x69, 0x8f, 0xc2, 0xcc, 0x2f,
  1292  	0x2f, 0x83, 0xcc, 0xe3, 0x86, 0x4d, 0xfd, 0x76, 0x56, 0x84, 0xaa, 0x80, 0x91, 0x38, 0x43, 0x97,
  1293  	0x1a, 0xb0, 0x59, 0x5a, 0x8e, 0x0d, 0xb3, 0x06, 0x3c, 0x9f, 0x1c, 0x36, 0xb2, 0x06, 0xec, 0xac,
  1294  	0xd0, 0x53, 0xc3, 0xab, 0xd0, 0xd3, 0x83, 0x56, 0xe8, 0xed, 0x95, 0x23, 0x48, 0x3e, 0xcb, 0x98,
  1295  	0xca, 0x31, 0x33, 0x60, 0xe5, 0x78, 0x37, 0xb9, 0x57, 0xaf, 0x46, 0x54, 0x8e, 0xad, 0xfe, 0xaa,
  1296  	0xfc, 0x22, 0x05, 0x2e, 0xc5, 0xae, 0x94, 0x43, 0xf7, 0xe8, 0x36, 0x97, 0x9d, 0xec, 0x70, 0xd9,
  1297  	0x65, 0x90, 0xe1, 0x1b, 0x48, 0xcd, 0xf3, 0x73, 0xdf, 0xa7, 0x39, 0x69, 0x03, 0x12, 0x24, 0xaf,
  1298  	0x82, 0xac, 0x60, 0x60, 0xbd, 0xb8, 0x33, 0xab, 0xa2, 0xd3, 0x03, 0x8f, 0x24, 0x17, 0xc1, 0x82,
  1299  	0x60, 0x21, 0x3a, 0xac, 0x23, 0xed, 0x10, 0xea, 0xd4, 0x76, 0x99, 0x7f, 0x4e, 0xab, 0xf3, 0xbc,
  1300  	0xa9, 0xea, 0xb5, 0xec, 0xb0, 0x06, 0x79, 0x3b, 0x18, 0x93, 0x7a, 0x75, 0x6e, 0x8a, 0xd5, 0xb9,
  1301  	0x57, 0x42, 0xb6, 0x11, 0x5b, 0x5a, 0x5f, 0xc9, 0xf7, 0xd9, 0x27, 0xab, 0x71, 0x85, 0x64, 0xde,
  1302  	0x6f, 0xf9, 0x00, 0xe4, 0xb0, 0x85, 0x29, 0xe6, 0x95, 0xcb, 0x11, 0xb6, 0x3c, 0xcf, 0xc3, 0x76,
  1303  	0xc8, 0xf5, 0x7a, 0x7a, 0x8c, 0x2c, 0x00, 0xee, 0xb1, 0xfe, 0xaa, 0xd7, 0x5d, 0xfe, 0x26, 0xc8,
  1304  	0x9b, 0x10, 0x7b, 0x66, 0x85, 0x96, 0x8e, 0x5a, 0xa1, 0xfb, 0x70, 0xc6, 0xc5, 0x10, 0x48, 0x18,
  1305  	0xbe, 0x33, 0xea, 0x32, 0xc9, 0x41, 0x7b, 0x45, 0x5d, 0xb6, 0x0f, 0xa8, 0x96, 0xa8, 0xeb, 0x92,
  1306  	0xb9, 0xa6, 0x47, 0x93, 0xb9, 0x66, 0xce, 0x98, 0xb9, 0xda, 0x73, 0xc4, 0xec, 0x50, 0x72, 0xc4,
  1307  	0xdc, 0x7f, 0x73, 0x77, 0x19, 0x9b, 0x06, 0x94, 0xbf, 0x9d, 0x07, 0xab, 0x3d, 0x4b, 0xb3, 0xa1,
  1308  	0x27, 0x8b, 0xcb, 0x60, 0xda, 0x8f, 0xe3, 0x53, 0xb3, 0x66, 0xd7, 0x45, 0xba, 0x10, 0xf1, 0x5f,
  1309  	0x65, 0x34, 0xf9, 0x3a, 0x98, 0x15, 0x4c, 0x8e, 0x6b, 0x9f, 0x60, 0x03, 0xb9, 0x22, 0x69, 0xcc,
  1310  	0x70, 0x72, 0x45, 0x50, 0xdb, 0xa3, 0x7c, 0x6a, 0xc0, 0x28, 0xef, 0x37, 0xb9, 0xdc, 0x02, 0x39,
  1311  	0x56, 0xdd, 0xb3, 0x32, 0x42, 0xa3, 0xd8, 0x44, 0x84, 0x42, 0xd3, 0x61, 0x59, 0x66, 0x42, 0x5d,
  1312  	0x68, 0xb6, 0xed, 0xfb, 0x4d, 0x5e, 0x97, 0x50, 0xd5, 0xd4, 0xec, 0x92, 0xe6, 0x5d, 0x9a, 0x6d,
  1313  	0xcd, 0x2e, 0x39, 0x70, 0x8e, 0x39, 0x00, 0xcf, 0x08, 0x2a, 0xff, 0x68, 0xcf, 0xb6, 0x99, 0x8e,
  1314  	0x6c, 0xdb, 0x19, 0xfc, 0xd9, 0xe1, 0x05, 0xff, 0xf4, 0x90, 0x83, 0x7f, 0x66, 0x34, 0xc1, 0x3f,
  1315  	0x3b, 0xe4, 0xe0, 0x9f, 0x1b, 0x30, 0xf8, 0xff, 0x1f, 0xcc, 0xf3, 0xe0, 0x77, 0x90, 0x6b, 0x62,
  1316  	0x42, 0xbc, 0x30, 0xcb, 0xcf, 0x33, 0xb7, 0x9a, 0x63, 0x0d, 0x95, 0x26, 0x7d, 0xc0, 0xea, 0xb6,
  1317  	0x57, 0x04, 0x2b, 0xbf, 0x4b, 0x81, 0xd5, 0x9e, 0xdb, 0xd5, 0x57, 0x45, 0x41, 0x1f, 0xe9, 0x62,
  1318  	0x11, 0x4c, 0xf1, 0xcd, 0xbd, 0x88, 0x5e, 0xf1, 0xd5, 0xb5, 0x58, 0x00, 0xa3, 0x2b, 0x16, 0x32,
  1319  	0xa3, 0x28, 0x16, 0x5e, 0xe5, 0x8b, 0xcf, 0x2b, 0x5f, 0xb4, 0x16, 0x0b, 0xf3, 0x03, 0x16, 0x0b,
  1320  	0x03, 0x25, 0x92, 0x9e, 0x29, 0x42, 0xf9, 0x11, 0x00, 0x97, 0x13, 0x9c, 0x46, 0x8e, 0xe6, 0xaa,
  1321  	0xa7, 0x5b, 0x6c, 0xf5, 0x71, 0xe1, 0xd3, 0x6f, 0x6c, 0xf5, 0x71, 0x01, 0x94, 0x3c, 0xb6, 0xa6,
  1322  	0x86, 0xb7, 0xfd, 0x3d, 0x3f, 0xfc, 0x0b, 0xaa, 0xd4, 0x68, 0x2e, 0xa8, 0xd2, 0xa3, 0xb9, 0xa0,
  1323  	0x02, 0x67, 0xbc, 0xa0, 0xaa, 0x02, 0xf9, 0x1d, 0xbb, 0xe1, 0xd6, 0x4f, 0x77, 0x2d, 0x8a, 0x5c,
  1324  	0x44, 0xa8, 0xda, 0xba, 0x55, 0xea, 0xed, 0x51, 0x9d, 0xdd, 0xe5, 0xf7, 0x40, 0x8e, 0x53, 0x77,
  1325  	0x1a, 0x16, 0x3b, 0x68, 0x85, 0x14, 0x6d, 0x42, 0x27, 0x94, 0x54, 0x7b, 0xc2, 0x46, 0x02, 0x84,
  1326  	0xae, 0xd3, 0xa6, 0x07, 0xbc, 0x4e, 0xbb, 0x17, 0xd4, 0xde, 0xec, 0xe4, 0x94, 0xb0, 0x6c, 0x9a,
  1327  	0x89, 0x07, 0xe2, 0x4b, 0x20, 0x0b, 0x73, 0xe2, 0x57, 0xe9, 0xfc, 0x2b, 0x74, 0x3b, 0x37, 0x9b,
  1328  	0xe0, 0x76, 0x6e, 0x6e, 0x28, 0xb7, 0x73, 0x83, 0xa6, 0xc4, 0xf7, 0x92, 0xa7, 0xc4, 0x37, 0x83,
  1329  	0x94, 0x98, 0x20, 0xd9, 0x29, 0x7b, 0x20, 0x1d, 0x0c, 0xd8, 0xac, 0xd8, 0xa5, 0x70, 0xc5, 0x1e,
  1330  	0x59, 0x04, 0x8e, 0x47, 0x17, 0x81, 0xca, 0xcf, 0xc7, 0x41, 0x21, 0xfe, 0x98, 0x74, 0x34, 0xf9,
  1331  	0x75, 0x0f, 0xcc, 0xb5, 0x9c, 0xea, 0x62, 0xbd, 0xaf, 0xcb, 0xf4, 0x59, 0x12, 0x92, 0x13, 0xeb,
  1332  	0xa8, 0xac, 0x26, 0x57, 0xf8, 0xf5, 0x40, 0xe1, 0xf1, 0x13, 0x57, 0xfe, 0x25, 0x81, 0x0b, 0x31,
  1333  	0x47, 0xe5, 0x03, 0x2b, 0xa6, 0x02, 0x66, 0x5a, 0xcf, 0xf0, 0xc5, 0x2d, 0xe1, 0x1b, 0xf1, 0xf7,
  1334  	0x72, 0x21, 0x11, 0xd4, 0xe9, 0x96, 0x53, 0xfa, 0xf2, 0xfd, 0xe4, 0xb3, 0xbf, 0x12, 0xcc, 0x3e,
  1335  	0x66, 0x6a, 0xca, 0x6f, 0x53, 0xe0, 0x5a, 0xb2, 0x4b, 0x8b, 0x57, 0x2f, 0x2d, 0xfe, 0xf7, 0x5e,
  1336  	0x5a, 0x74, 0x3b, 0x8f, 0x48, 0xf7, 0x7f, 0x1e, 0x01, 0xba, 0x9f, 0x47, 0x44, 0xa5, 0x88, 0xcc,
  1337  	0xe0, 0x29, 0xa2, 0x99, 0x2d, 0xb3, 0xe1, 0x6c, 0x79, 0xf6, 0x65, 0xee, 0x20, 0x7a, 0x99, 0xfb,
  1338  	0x42, 0xec, 0xdd, 0xb2, 0x38, 0x51, 0xfa, 0xbc, 0x97, 0xbb, 0xf2, 0xc3, 0xe4, 0x99, 0xa3, 0x14,
  1339  	0x77, 0x08, 0x10, 0xb5, 0x56, 0xfd, 0x46, 0x02, 0xb9, 0xa8, 0x89, 0x7a, 0x1b, 0x5a, 0x71, 0x1a,
  1340  	0xc7, 0x73, 0x86, 0xf8, 0x92, 0x97, 0x40, 0x2a, 0x38, 0x80, 0xe3, 0x19, 0x23, 0xf8, 0xee, 0xb6,
  1341  	0xf7, 0x9e, 0x48, 0xb8, 0xf7, 0x9e, 0x1c, 0x6c, 0xef, 0xad, 0xfc, 0x5e, 0x02, 0xd9, 0x16, 0xd9,
  1342  	0xdb, 0xce, 0x11, 0xa4, 0x9e, 0xe7, 0x08, 0xe3, 0x89, 0xcf, 0x11, 0x46, 0x3d, 0x97, 0x7f, 0x8e,
  1343  	0x83, 0xcb, 0x91, 0x77, 0xf6, 0x43, 0x3a, 0x9b, 0x79, 0x08, 0xa6, 0x83, 0xe7, 0x04, 0xac, 0x7a,
  1344  	0x9a, 0x60, 0x81, 0xf0, 0xa5, 0xbe, 0xdf, 0x10, 0xb0, 0x6a, 0x2a, 0xab, 0x87, 0xbe, 0xe4, 0x1a,
  1345  	0x78, 0x2d, 0xc0, 0x16, 0x4f, 0x17, 0x1c, 0xdb, 0x0e, 0x9e, 0xb4, 0x14, 0xe3, 0xc6, 0xf0, 0x61,
  1346  	0xf9, 0x20, 0x15, 0xdb, 0xae, 0xab, 0x0b, 0x7a, 0x07, 0x8d, 0x0c, 0x56, 0xb4, 0x25, 0x50, 0xa8,
  1347  	0xf2, 0xef, 0x89, 0x2e, 0x8a, 0x1f, 0xd2, 0x52, 0x3a, 0x4a, 0xc5, 0x37, 0xc0, 0x72, 0xa4, 0xe2,
  1348  	0x35, 0x68, 0x18, 0x98, 0x25, 0x80, 0x01, 0x4d, 0x70, 0x31, 0xc2, 0x04, 0xeb, 0x3e, 0xa6, 0xfc,
  1349  	0x18, 0x5c, 0x8a, 0x1e, 0x96, 0x3f, 0x77, 0xf0, 0x5f, 0x0f, 0xf5, 0x3b, 0xe8, 0x52, 0xc4, 0xa0,
  1350  	0xdc, 0x08, 0xc3, 0x34, 0x7f, 0x5b, 0x1e, 0xfc, 0x8e, 0x04, 0xe6, 0xfd, 0xf1, 0xb0, 0x45, 0x79,
  1351  	0xab, 0x7c, 0x1d, 0xcc, 0x42, 0x9d, 0x3f, 0xa3, 0x80, 0x86, 0xe1, 0x22, 0x42, 0x84, 0xd9, 0x67,
  1352  	0x04, 0x79, 0x9d, 0x53, 0xe5, 0x0d, 0x00, 0x2c, 0xf4, 0x44, 0x73, 0xbc, 0xbe, 0xa4, 0x9f, 0xc3,
  1353  	0xb2, 0xb4, 0x85, 0x9e, 0xb0, 0x11, 0x89, 0xf2, 0xa7, 0x71, 0xb0, 0xd6, 0x22, 0x6a, 0x05, 0xb1,
  1354  	0xcd, 0x1e, 0x6f, 0x1e, 0x92, 0x1b, 0xbe, 0x05, 0x16, 0x1d, 0x0e, 0xcb, 0x6c, 0x15, 0x5a, 0xe5,
  1355  	0x27, 0xd8, 0x2a, 0x9f, 0x73, 0xfc, 0x41, 0xed, 0x7a, 0x73, 0x99, 0xd7, 0x40, 0x2e, 0x30, 0x30,
  1356  	0xb6, 0x68, 0x60, 0x60, 0xee, 0x55, 0x37, 0xe3, 0x0c, 0xdc, 0xa1, 0x54, 0x55, 0x76, 0xdb, 0x49,
  1357  	0xa4, 0xfc, 0x8d, 0xe4, 0x76, 0xbd, 0x15, 0x6d, 0xd7, 0x18, 0x65, 0x29, 0x2f, 0x25, 0xb0, 0x10,
  1358  	0xf1, 0xb4, 0x65, 0x60, 0x25, 0x7e, 0x1d, 0xa4, 0x88, 0x7e, 0x8c, 0x8c, 0x46, 0x1d, 0x89, 0x30,
  1359  	0x4e, 0xfa, 0xaa, 0xa6, 0x2a, 0xba, 0xa9, 0x01, 0x40, 0xf9, 0xed, 0xe4, 0x53, 0xbf, 0x18, 0x4c,
  1360  	0x3d, 0x62, 0x36, 0xca, 0x87, 0xe3, 0x60, 0x99, 0x3d, 0x6c, 0xd9, 0xb4, 0x4d, 0xb3, 0x61, 0x61,
  1361  	0x7a, 0xea, 0x19, 0xb1, 0xea, 0x19, 0xf4, 0xcc, 0x33, 0x3e, 0x00, 0xe9, 0xf6, 0xf7, 0x92, 0x77,
  1362  	0xc4, 0xfb, 0xf5, 0x62, 0xcb, 0x53, 0xf5, 0xa6, 0xd4, 0xdd, 0x64, 0x50, 0x9b, 0x48, 0xe5, 0x6a,
  1363  	0xf2, 0xb9, 0xaf, 0xb5, 0x3e, 0xde, 0xe9, 0x8e, 0xaf, 0xfc, 0x6a, 0x1c, 0x14, 0xd7, 0xa9, 0x6d,
  1364  	0x62, 0x9d, 0x97, 0x3d, 0xf7, 0x5d, 0x83, 0x55, 0xf2, 0xf7, 0x1a, 0x75, 0x8a, 0x9d, 0x3a, 0x46,
  1365  	0xae, 0x6f, 0x85, 0x33, 0xab, 0x05, 0x81, 0x45, 0xff, 0x15, 0x14, 0x42, 0x9a, 0x19, 0x0c, 0xe0,
  1366  	0xeb, 0xa8, 0x94, 0xe0, 0xe5, 0x53, 0x58, 0x30, 0x35, 0x67, 0x76, 0x12, 0x49, 0xb9, 0x96, 0x5c,
  1367  	0x4d, 0x77, 0x02, 0x35, 0xf5, 0xa7, 0x82, 0x1b, 0x4f, 0x41, 0x36, 0xfc, 0xaa, 0x57, 0xbe, 0x0d,
  1368  	0x72, 0xdb, 0xef, 0x6f, 0xbe, 0xb3, 0xbe, 0xf7, 0xf6, 0xb6, 0x76, 0xb0, 0x57, 0xad, 0x6c, 0x6f,
  1369  	0xee, 0xee, 0xec, 0x6e, 0x6f, 0xcd, 0x8d, 0x2d, 0xe5, 0x9f, 0x3d, 0x5f, 0x89, 0x6c, 0x93, 0x65,
  1370  	0x30, 0x59, 0xad, 0xdc, 0xdf, 0x9f, 0x93, 0x96, 0x52, 0xcf, 0x9e, 0xaf, 0xb0, 0xdf, 0x9e, 0x12,
  1371  	0xb7, 0xb6, 0xd5, 0xdd, 0x77, 0xd7, 0xf7, 0x77, 0xdf, 0xdd, 0xae, 0xce, 0x8d, 0x2f, 0xcd, 0x3e,
  1372  	0x7b, 0xbe, 0x12, 0x26, 0x6d, 0x1c, 0x7f, 0xfc, 0xa2, 0x20, 0x7d, 0xfa, 0xa2, 0x20, 0xfd, 0xf5,
  1373  	0x45, 0x41, 0xfa, 0xc1, 0xcb, 0xc2, 0xd8, 0xa7, 0x2f, 0x0b, 0x63, 0x7f, 0x7e, 0x59, 0x18, 0x7b,
  1374  	0xb8, 0x77, 0x84, 0xe9, 0x71, 0xa3, 0x56, 0xd4, 0x6d, 0xb3, 0xb4, 0xeb, 0x2b, 0xf2, 0x2e, 0xac,
  1375  	0x91, 0x52, 0xa0, 0xd6, 0x9b, 0xba, 0xed, 0xa2, 0xf0, 0xe7, 0x31, 0xc4, 0x56, 0xc9, 0xb4, 0xbd,
  1376  	0xb9, 0x91, 0x66, 0x35, 0xec, 0xd5, 0x64, 0xa4, 0x36, 0xc5, 0xfe, 0x32, 0xe1, 0x8b, 0xff, 0x09,
  1377  	0x00, 0x00, 0xff, 0xff, 0x16, 0x7b, 0x31, 0x71, 0xe1, 0x31, 0x00, 0x00,
  1378  }
  1379  
  1380  func (m *SpotMarketParamUpdateProposal) Marshal() (dAtA []byte, err error) {
  1381  	size := m.Size()
  1382  	dAtA = make([]byte, size)
  1383  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1384  	if err != nil {
  1385  		return nil, err
  1386  	}
  1387  	return dAtA[:n], nil
  1388  }
  1389  
  1390  func (m *SpotMarketParamUpdateProposal) MarshalTo(dAtA []byte) (int, error) {
  1391  	size := m.Size()
  1392  	return m.MarshalToSizedBuffer(dAtA[:size])
  1393  }
  1394  
  1395  func (m *SpotMarketParamUpdateProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1396  	i := len(dAtA)
  1397  	_ = i
  1398  	var l int
  1399  	_ = l
  1400  	if m.AdminInfo != nil {
  1401  		{
  1402  			size, err := m.AdminInfo.MarshalToSizedBuffer(dAtA[:i])
  1403  			if err != nil {
  1404  				return 0, err
  1405  			}
  1406  			i -= size
  1407  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1408  		}
  1409  		i--
  1410  		dAtA[i] = 0x62
  1411  	}
  1412  	if m.MinNotional != nil {
  1413  		{
  1414  			size := m.MinNotional.Size()
  1415  			i -= size
  1416  			if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil {
  1417  				return 0, err
  1418  			}
  1419  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1420  		}
  1421  		i--
  1422  		dAtA[i] = 0x5a
  1423  	}
  1424  	if len(m.Ticker) > 0 {
  1425  		i -= len(m.Ticker)
  1426  		copy(dAtA[i:], m.Ticker)
  1427  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Ticker)))
  1428  		i--
  1429  		dAtA[i] = 0x52
  1430  	}
  1431  	if m.Status != 0 {
  1432  		i = encodeVarintProposal(dAtA, i, uint64(m.Status))
  1433  		i--
  1434  		dAtA[i] = 0x48
  1435  	}
  1436  	if m.MinQuantityTickSize != nil {
  1437  		{
  1438  			size := m.MinQuantityTickSize.Size()
  1439  			i -= size
  1440  			if _, err := m.MinQuantityTickSize.MarshalTo(dAtA[i:]); err != nil {
  1441  				return 0, err
  1442  			}
  1443  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1444  		}
  1445  		i--
  1446  		dAtA[i] = 0x42
  1447  	}
  1448  	if m.MinPriceTickSize != nil {
  1449  		{
  1450  			size := m.MinPriceTickSize.Size()
  1451  			i -= size
  1452  			if _, err := m.MinPriceTickSize.MarshalTo(dAtA[i:]); err != nil {
  1453  				return 0, err
  1454  			}
  1455  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1456  		}
  1457  		i--
  1458  		dAtA[i] = 0x3a
  1459  	}
  1460  	if m.RelayerFeeShareRate != nil {
  1461  		{
  1462  			size := m.RelayerFeeShareRate.Size()
  1463  			i -= size
  1464  			if _, err := m.RelayerFeeShareRate.MarshalTo(dAtA[i:]); err != nil {
  1465  				return 0, err
  1466  			}
  1467  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1468  		}
  1469  		i--
  1470  		dAtA[i] = 0x32
  1471  	}
  1472  	if m.TakerFeeRate != nil {
  1473  		{
  1474  			size := m.TakerFeeRate.Size()
  1475  			i -= size
  1476  			if _, err := m.TakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  1477  				return 0, err
  1478  			}
  1479  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1480  		}
  1481  		i--
  1482  		dAtA[i] = 0x2a
  1483  	}
  1484  	if m.MakerFeeRate != nil {
  1485  		{
  1486  			size := m.MakerFeeRate.Size()
  1487  			i -= size
  1488  			if _, err := m.MakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  1489  				return 0, err
  1490  			}
  1491  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1492  		}
  1493  		i--
  1494  		dAtA[i] = 0x22
  1495  	}
  1496  	if len(m.MarketId) > 0 {
  1497  		i -= len(m.MarketId)
  1498  		copy(dAtA[i:], m.MarketId)
  1499  		i = encodeVarintProposal(dAtA, i, uint64(len(m.MarketId)))
  1500  		i--
  1501  		dAtA[i] = 0x1a
  1502  	}
  1503  	if len(m.Description) > 0 {
  1504  		i -= len(m.Description)
  1505  		copy(dAtA[i:], m.Description)
  1506  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  1507  		i--
  1508  		dAtA[i] = 0x12
  1509  	}
  1510  	if len(m.Title) > 0 {
  1511  		i -= len(m.Title)
  1512  		copy(dAtA[i:], m.Title)
  1513  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  1514  		i--
  1515  		dAtA[i] = 0xa
  1516  	}
  1517  	return len(dAtA) - i, nil
  1518  }
  1519  
  1520  func (m *ExchangeEnableProposal) Marshal() (dAtA []byte, err error) {
  1521  	size := m.Size()
  1522  	dAtA = make([]byte, size)
  1523  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1524  	if err != nil {
  1525  		return nil, err
  1526  	}
  1527  	return dAtA[:n], nil
  1528  }
  1529  
  1530  func (m *ExchangeEnableProposal) MarshalTo(dAtA []byte) (int, error) {
  1531  	size := m.Size()
  1532  	return m.MarshalToSizedBuffer(dAtA[:size])
  1533  }
  1534  
  1535  func (m *ExchangeEnableProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1536  	i := len(dAtA)
  1537  	_ = i
  1538  	var l int
  1539  	_ = l
  1540  	if m.ExchangeType != 0 {
  1541  		i = encodeVarintProposal(dAtA, i, uint64(m.ExchangeType))
  1542  		i--
  1543  		dAtA[i] = 0x18
  1544  	}
  1545  	if len(m.Description) > 0 {
  1546  		i -= len(m.Description)
  1547  		copy(dAtA[i:], m.Description)
  1548  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  1549  		i--
  1550  		dAtA[i] = 0x12
  1551  	}
  1552  	if len(m.Title) > 0 {
  1553  		i -= len(m.Title)
  1554  		copy(dAtA[i:], m.Title)
  1555  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  1556  		i--
  1557  		dAtA[i] = 0xa
  1558  	}
  1559  	return len(dAtA) - i, nil
  1560  }
  1561  
  1562  func (m *BatchExchangeModificationProposal) Marshal() (dAtA []byte, err error) {
  1563  	size := m.Size()
  1564  	dAtA = make([]byte, size)
  1565  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1566  	if err != nil {
  1567  		return nil, err
  1568  	}
  1569  	return dAtA[:n], nil
  1570  }
  1571  
  1572  func (m *BatchExchangeModificationProposal) MarshalTo(dAtA []byte) (int, error) {
  1573  	size := m.Size()
  1574  	return m.MarshalToSizedBuffer(dAtA[:size])
  1575  }
  1576  
  1577  func (m *BatchExchangeModificationProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1578  	i := len(dAtA)
  1579  	_ = i
  1580  	var l int
  1581  	_ = l
  1582  	if len(m.MarketForcedSettlementProposals) > 0 {
  1583  		for iNdEx := len(m.MarketForcedSettlementProposals) - 1; iNdEx >= 0; iNdEx-- {
  1584  			{
  1585  				size, err := m.MarketForcedSettlementProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1586  				if err != nil {
  1587  					return 0, err
  1588  				}
  1589  				i -= size
  1590  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1591  			}
  1592  			i--
  1593  			dAtA[i] = 0x6a
  1594  		}
  1595  	}
  1596  	if m.FeeDiscountProposal != nil {
  1597  		{
  1598  			size, err := m.FeeDiscountProposal.MarshalToSizedBuffer(dAtA[:i])
  1599  			if err != nil {
  1600  				return 0, err
  1601  			}
  1602  			i -= size
  1603  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1604  		}
  1605  		i--
  1606  		dAtA[i] = 0x62
  1607  	}
  1608  	if m.DenomDecimalsUpdateProposal != nil {
  1609  		{
  1610  			size, err := m.DenomDecimalsUpdateProposal.MarshalToSizedBuffer(dAtA[:i])
  1611  			if err != nil {
  1612  				return 0, err
  1613  			}
  1614  			i -= size
  1615  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1616  		}
  1617  		i--
  1618  		dAtA[i] = 0x5a
  1619  	}
  1620  	if len(m.BinaryOptionsParamUpdateProposals) > 0 {
  1621  		for iNdEx := len(m.BinaryOptionsParamUpdateProposals) - 1; iNdEx >= 0; iNdEx-- {
  1622  			{
  1623  				size, err := m.BinaryOptionsParamUpdateProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1624  				if err != nil {
  1625  					return 0, err
  1626  				}
  1627  				i -= size
  1628  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1629  			}
  1630  			i--
  1631  			dAtA[i] = 0x52
  1632  		}
  1633  	}
  1634  	if len(m.BinaryOptionsMarketLaunchProposals) > 0 {
  1635  		for iNdEx := len(m.BinaryOptionsMarketLaunchProposals) - 1; iNdEx >= 0; iNdEx-- {
  1636  			{
  1637  				size, err := m.BinaryOptionsMarketLaunchProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1638  				if err != nil {
  1639  					return 0, err
  1640  				}
  1641  				i -= size
  1642  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1643  			}
  1644  			i--
  1645  			dAtA[i] = 0x4a
  1646  		}
  1647  	}
  1648  	if m.TradingRewardCampaignUpdateProposal != nil {
  1649  		{
  1650  			size, err := m.TradingRewardCampaignUpdateProposal.MarshalToSizedBuffer(dAtA[:i])
  1651  			if err != nil {
  1652  				return 0, err
  1653  			}
  1654  			i -= size
  1655  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1656  		}
  1657  		i--
  1658  		dAtA[i] = 0x42
  1659  	}
  1660  	if len(m.ExpiryFuturesMarketLaunchProposals) > 0 {
  1661  		for iNdEx := len(m.ExpiryFuturesMarketLaunchProposals) - 1; iNdEx >= 0; iNdEx-- {
  1662  			{
  1663  				size, err := m.ExpiryFuturesMarketLaunchProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1664  				if err != nil {
  1665  					return 0, err
  1666  				}
  1667  				i -= size
  1668  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1669  			}
  1670  			i--
  1671  			dAtA[i] = 0x3a
  1672  		}
  1673  	}
  1674  	if len(m.PerpetualMarketLaunchProposals) > 0 {
  1675  		for iNdEx := len(m.PerpetualMarketLaunchProposals) - 1; iNdEx >= 0; iNdEx-- {
  1676  			{
  1677  				size, err := m.PerpetualMarketLaunchProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1678  				if err != nil {
  1679  					return 0, err
  1680  				}
  1681  				i -= size
  1682  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1683  			}
  1684  			i--
  1685  			dAtA[i] = 0x32
  1686  		}
  1687  	}
  1688  	if len(m.SpotMarketLaunchProposals) > 0 {
  1689  		for iNdEx := len(m.SpotMarketLaunchProposals) - 1; iNdEx >= 0; iNdEx-- {
  1690  			{
  1691  				size, err := m.SpotMarketLaunchProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1692  				if err != nil {
  1693  					return 0, err
  1694  				}
  1695  				i -= size
  1696  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1697  			}
  1698  			i--
  1699  			dAtA[i] = 0x2a
  1700  		}
  1701  	}
  1702  	if len(m.DerivativeMarketParamUpdateProposals) > 0 {
  1703  		for iNdEx := len(m.DerivativeMarketParamUpdateProposals) - 1; iNdEx >= 0; iNdEx-- {
  1704  			{
  1705  				size, err := m.DerivativeMarketParamUpdateProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1706  				if err != nil {
  1707  					return 0, err
  1708  				}
  1709  				i -= size
  1710  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1711  			}
  1712  			i--
  1713  			dAtA[i] = 0x22
  1714  		}
  1715  	}
  1716  	if len(m.SpotMarketParamUpdateProposals) > 0 {
  1717  		for iNdEx := len(m.SpotMarketParamUpdateProposals) - 1; iNdEx >= 0; iNdEx-- {
  1718  			{
  1719  				size, err := m.SpotMarketParamUpdateProposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  1720  				if err != nil {
  1721  					return 0, err
  1722  				}
  1723  				i -= size
  1724  				i = encodeVarintProposal(dAtA, i, uint64(size))
  1725  			}
  1726  			i--
  1727  			dAtA[i] = 0x1a
  1728  		}
  1729  	}
  1730  	if len(m.Description) > 0 {
  1731  		i -= len(m.Description)
  1732  		copy(dAtA[i:], m.Description)
  1733  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  1734  		i--
  1735  		dAtA[i] = 0x12
  1736  	}
  1737  	if len(m.Title) > 0 {
  1738  		i -= len(m.Title)
  1739  		copy(dAtA[i:], m.Title)
  1740  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  1741  		i--
  1742  		dAtA[i] = 0xa
  1743  	}
  1744  	return len(dAtA) - i, nil
  1745  }
  1746  
  1747  func (m *SpotMarketLaunchProposal) Marshal() (dAtA []byte, err error) {
  1748  	size := m.Size()
  1749  	dAtA = make([]byte, size)
  1750  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1751  	if err != nil {
  1752  		return nil, err
  1753  	}
  1754  	return dAtA[:n], nil
  1755  }
  1756  
  1757  func (m *SpotMarketLaunchProposal) MarshalTo(dAtA []byte) (int, error) {
  1758  	size := m.Size()
  1759  	return m.MarshalToSizedBuffer(dAtA[:size])
  1760  }
  1761  
  1762  func (m *SpotMarketLaunchProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1763  	i := len(dAtA)
  1764  	_ = i
  1765  	var l int
  1766  	_ = l
  1767  	if m.AdminInfo != nil {
  1768  		{
  1769  			size, err := m.AdminInfo.MarshalToSizedBuffer(dAtA[:i])
  1770  			if err != nil {
  1771  				return 0, err
  1772  			}
  1773  			i -= size
  1774  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1775  		}
  1776  		i--
  1777  		dAtA[i] = 0x5a
  1778  	}
  1779  	{
  1780  		size := m.MinNotional.Size()
  1781  		i -= size
  1782  		if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil {
  1783  			return 0, err
  1784  		}
  1785  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1786  	}
  1787  	i--
  1788  	dAtA[i] = 0x52
  1789  	if m.TakerFeeRate != nil {
  1790  		{
  1791  			size := m.TakerFeeRate.Size()
  1792  			i -= size
  1793  			if _, err := m.TakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  1794  				return 0, err
  1795  			}
  1796  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1797  		}
  1798  		i--
  1799  		dAtA[i] = 0x4a
  1800  	}
  1801  	if m.MakerFeeRate != nil {
  1802  		{
  1803  			size := m.MakerFeeRate.Size()
  1804  			i -= size
  1805  			if _, err := m.MakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  1806  				return 0, err
  1807  			}
  1808  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1809  		}
  1810  		i--
  1811  		dAtA[i] = 0x42
  1812  	}
  1813  	{
  1814  		size := m.MinQuantityTickSize.Size()
  1815  		i -= size
  1816  		if _, err := m.MinQuantityTickSize.MarshalTo(dAtA[i:]); err != nil {
  1817  			return 0, err
  1818  		}
  1819  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1820  	}
  1821  	i--
  1822  	dAtA[i] = 0x3a
  1823  	{
  1824  		size := m.MinPriceTickSize.Size()
  1825  		i -= size
  1826  		if _, err := m.MinPriceTickSize.MarshalTo(dAtA[i:]); err != nil {
  1827  			return 0, err
  1828  		}
  1829  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1830  	}
  1831  	i--
  1832  	dAtA[i] = 0x32
  1833  	if len(m.QuoteDenom) > 0 {
  1834  		i -= len(m.QuoteDenom)
  1835  		copy(dAtA[i:], m.QuoteDenom)
  1836  		i = encodeVarintProposal(dAtA, i, uint64(len(m.QuoteDenom)))
  1837  		i--
  1838  		dAtA[i] = 0x2a
  1839  	}
  1840  	if len(m.BaseDenom) > 0 {
  1841  		i -= len(m.BaseDenom)
  1842  		copy(dAtA[i:], m.BaseDenom)
  1843  		i = encodeVarintProposal(dAtA, i, uint64(len(m.BaseDenom)))
  1844  		i--
  1845  		dAtA[i] = 0x22
  1846  	}
  1847  	if len(m.Ticker) > 0 {
  1848  		i -= len(m.Ticker)
  1849  		copy(dAtA[i:], m.Ticker)
  1850  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Ticker)))
  1851  		i--
  1852  		dAtA[i] = 0x1a
  1853  	}
  1854  	if len(m.Description) > 0 {
  1855  		i -= len(m.Description)
  1856  		copy(dAtA[i:], m.Description)
  1857  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  1858  		i--
  1859  		dAtA[i] = 0x12
  1860  	}
  1861  	if len(m.Title) > 0 {
  1862  		i -= len(m.Title)
  1863  		copy(dAtA[i:], m.Title)
  1864  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  1865  		i--
  1866  		dAtA[i] = 0xa
  1867  	}
  1868  	return len(dAtA) - i, nil
  1869  }
  1870  
  1871  func (m *PerpetualMarketLaunchProposal) Marshal() (dAtA []byte, err error) {
  1872  	size := m.Size()
  1873  	dAtA = make([]byte, size)
  1874  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1875  	if err != nil {
  1876  		return nil, err
  1877  	}
  1878  	return dAtA[:n], nil
  1879  }
  1880  
  1881  func (m *PerpetualMarketLaunchProposal) MarshalTo(dAtA []byte) (int, error) {
  1882  	size := m.Size()
  1883  	return m.MarshalToSizedBuffer(dAtA[:size])
  1884  }
  1885  
  1886  func (m *PerpetualMarketLaunchProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1887  	i := len(dAtA)
  1888  	_ = i
  1889  	var l int
  1890  	_ = l
  1891  	if m.AdminInfo != nil {
  1892  		{
  1893  			size, err := m.AdminInfo.MarshalToSizedBuffer(dAtA[:i])
  1894  			if err != nil {
  1895  				return 0, err
  1896  			}
  1897  			i -= size
  1898  			i = encodeVarintProposal(dAtA, i, uint64(size))
  1899  		}
  1900  		i--
  1901  		dAtA[i] = 0x1
  1902  		i--
  1903  		dAtA[i] = 0x82
  1904  	}
  1905  	{
  1906  		size := m.MinNotional.Size()
  1907  		i -= size
  1908  		if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil {
  1909  			return 0, err
  1910  		}
  1911  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1912  	}
  1913  	i--
  1914  	dAtA[i] = 0x7a
  1915  	{
  1916  		size := m.MinQuantityTickSize.Size()
  1917  		i -= size
  1918  		if _, err := m.MinQuantityTickSize.MarshalTo(dAtA[i:]); err != nil {
  1919  			return 0, err
  1920  		}
  1921  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1922  	}
  1923  	i--
  1924  	dAtA[i] = 0x72
  1925  	{
  1926  		size := m.MinPriceTickSize.Size()
  1927  		i -= size
  1928  		if _, err := m.MinPriceTickSize.MarshalTo(dAtA[i:]); err != nil {
  1929  			return 0, err
  1930  		}
  1931  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1932  	}
  1933  	i--
  1934  	dAtA[i] = 0x6a
  1935  	{
  1936  		size := m.TakerFeeRate.Size()
  1937  		i -= size
  1938  		if _, err := m.TakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  1939  			return 0, err
  1940  		}
  1941  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1942  	}
  1943  	i--
  1944  	dAtA[i] = 0x62
  1945  	{
  1946  		size := m.MakerFeeRate.Size()
  1947  		i -= size
  1948  		if _, err := m.MakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  1949  			return 0, err
  1950  		}
  1951  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1952  	}
  1953  	i--
  1954  	dAtA[i] = 0x5a
  1955  	{
  1956  		size := m.MaintenanceMarginRatio.Size()
  1957  		i -= size
  1958  		if _, err := m.MaintenanceMarginRatio.MarshalTo(dAtA[i:]); err != nil {
  1959  			return 0, err
  1960  		}
  1961  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1962  	}
  1963  	i--
  1964  	dAtA[i] = 0x52
  1965  	{
  1966  		size := m.InitialMarginRatio.Size()
  1967  		i -= size
  1968  		if _, err := m.InitialMarginRatio.MarshalTo(dAtA[i:]); err != nil {
  1969  			return 0, err
  1970  		}
  1971  		i = encodeVarintProposal(dAtA, i, uint64(size))
  1972  	}
  1973  	i--
  1974  	dAtA[i] = 0x4a
  1975  	if m.OracleType != 0 {
  1976  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleType))
  1977  		i--
  1978  		dAtA[i] = 0x40
  1979  	}
  1980  	if m.OracleScaleFactor != 0 {
  1981  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleScaleFactor))
  1982  		i--
  1983  		dAtA[i] = 0x38
  1984  	}
  1985  	if len(m.OracleQuote) > 0 {
  1986  		i -= len(m.OracleQuote)
  1987  		copy(dAtA[i:], m.OracleQuote)
  1988  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleQuote)))
  1989  		i--
  1990  		dAtA[i] = 0x32
  1991  	}
  1992  	if len(m.OracleBase) > 0 {
  1993  		i -= len(m.OracleBase)
  1994  		copy(dAtA[i:], m.OracleBase)
  1995  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleBase)))
  1996  		i--
  1997  		dAtA[i] = 0x2a
  1998  	}
  1999  	if len(m.QuoteDenom) > 0 {
  2000  		i -= len(m.QuoteDenom)
  2001  		copy(dAtA[i:], m.QuoteDenom)
  2002  		i = encodeVarintProposal(dAtA, i, uint64(len(m.QuoteDenom)))
  2003  		i--
  2004  		dAtA[i] = 0x22
  2005  	}
  2006  	if len(m.Ticker) > 0 {
  2007  		i -= len(m.Ticker)
  2008  		copy(dAtA[i:], m.Ticker)
  2009  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Ticker)))
  2010  		i--
  2011  		dAtA[i] = 0x1a
  2012  	}
  2013  	if len(m.Description) > 0 {
  2014  		i -= len(m.Description)
  2015  		copy(dAtA[i:], m.Description)
  2016  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  2017  		i--
  2018  		dAtA[i] = 0x12
  2019  	}
  2020  	if len(m.Title) > 0 {
  2021  		i -= len(m.Title)
  2022  		copy(dAtA[i:], m.Title)
  2023  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  2024  		i--
  2025  		dAtA[i] = 0xa
  2026  	}
  2027  	return len(dAtA) - i, nil
  2028  }
  2029  
  2030  func (m *BinaryOptionsMarketLaunchProposal) Marshal() (dAtA []byte, err error) {
  2031  	size := m.Size()
  2032  	dAtA = make([]byte, size)
  2033  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2034  	if err != nil {
  2035  		return nil, err
  2036  	}
  2037  	return dAtA[:n], nil
  2038  }
  2039  
  2040  func (m *BinaryOptionsMarketLaunchProposal) MarshalTo(dAtA []byte) (int, error) {
  2041  	size := m.Size()
  2042  	return m.MarshalToSizedBuffer(dAtA[:size])
  2043  }
  2044  
  2045  func (m *BinaryOptionsMarketLaunchProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2046  	i := len(dAtA)
  2047  	_ = i
  2048  	var l int
  2049  	_ = l
  2050  	if m.AdminPermissions != 0 {
  2051  		i = encodeVarintProposal(dAtA, i, uint64(m.AdminPermissions))
  2052  		i--
  2053  		dAtA[i] = 0x1
  2054  		i--
  2055  		dAtA[i] = 0x88
  2056  	}
  2057  	{
  2058  		size := m.MinNotional.Size()
  2059  		i -= size
  2060  		if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil {
  2061  			return 0, err
  2062  		}
  2063  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2064  	}
  2065  	i--
  2066  	dAtA[i] = 0x1
  2067  	i--
  2068  	dAtA[i] = 0x82
  2069  	{
  2070  		size := m.MinQuantityTickSize.Size()
  2071  		i -= size
  2072  		if _, err := m.MinQuantityTickSize.MarshalTo(dAtA[i:]); err != nil {
  2073  			return 0, err
  2074  		}
  2075  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2076  	}
  2077  	i--
  2078  	dAtA[i] = 0x7a
  2079  	{
  2080  		size := m.MinPriceTickSize.Size()
  2081  		i -= size
  2082  		if _, err := m.MinPriceTickSize.MarshalTo(dAtA[i:]); err != nil {
  2083  			return 0, err
  2084  		}
  2085  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2086  	}
  2087  	i--
  2088  	dAtA[i] = 0x72
  2089  	{
  2090  		size := m.TakerFeeRate.Size()
  2091  		i -= size
  2092  		if _, err := m.TakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2093  			return 0, err
  2094  		}
  2095  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2096  	}
  2097  	i--
  2098  	dAtA[i] = 0x6a
  2099  	{
  2100  		size := m.MakerFeeRate.Size()
  2101  		i -= size
  2102  		if _, err := m.MakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2103  			return 0, err
  2104  		}
  2105  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2106  	}
  2107  	i--
  2108  	dAtA[i] = 0x62
  2109  	if len(m.QuoteDenom) > 0 {
  2110  		i -= len(m.QuoteDenom)
  2111  		copy(dAtA[i:], m.QuoteDenom)
  2112  		i = encodeVarintProposal(dAtA, i, uint64(len(m.QuoteDenom)))
  2113  		i--
  2114  		dAtA[i] = 0x5a
  2115  	}
  2116  	if len(m.Admin) > 0 {
  2117  		i -= len(m.Admin)
  2118  		copy(dAtA[i:], m.Admin)
  2119  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Admin)))
  2120  		i--
  2121  		dAtA[i] = 0x52
  2122  	}
  2123  	if m.SettlementTimestamp != 0 {
  2124  		i = encodeVarintProposal(dAtA, i, uint64(m.SettlementTimestamp))
  2125  		i--
  2126  		dAtA[i] = 0x48
  2127  	}
  2128  	if m.ExpirationTimestamp != 0 {
  2129  		i = encodeVarintProposal(dAtA, i, uint64(m.ExpirationTimestamp))
  2130  		i--
  2131  		dAtA[i] = 0x40
  2132  	}
  2133  	if m.OracleScaleFactor != 0 {
  2134  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleScaleFactor))
  2135  		i--
  2136  		dAtA[i] = 0x38
  2137  	}
  2138  	if m.OracleType != 0 {
  2139  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleType))
  2140  		i--
  2141  		dAtA[i] = 0x30
  2142  	}
  2143  	if len(m.OracleProvider) > 0 {
  2144  		i -= len(m.OracleProvider)
  2145  		copy(dAtA[i:], m.OracleProvider)
  2146  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleProvider)))
  2147  		i--
  2148  		dAtA[i] = 0x2a
  2149  	}
  2150  	if len(m.OracleSymbol) > 0 {
  2151  		i -= len(m.OracleSymbol)
  2152  		copy(dAtA[i:], m.OracleSymbol)
  2153  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleSymbol)))
  2154  		i--
  2155  		dAtA[i] = 0x22
  2156  	}
  2157  	if len(m.Ticker) > 0 {
  2158  		i -= len(m.Ticker)
  2159  		copy(dAtA[i:], m.Ticker)
  2160  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Ticker)))
  2161  		i--
  2162  		dAtA[i] = 0x1a
  2163  	}
  2164  	if len(m.Description) > 0 {
  2165  		i -= len(m.Description)
  2166  		copy(dAtA[i:], m.Description)
  2167  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  2168  		i--
  2169  		dAtA[i] = 0x12
  2170  	}
  2171  	if len(m.Title) > 0 {
  2172  		i -= len(m.Title)
  2173  		copy(dAtA[i:], m.Title)
  2174  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  2175  		i--
  2176  		dAtA[i] = 0xa
  2177  	}
  2178  	return len(dAtA) - i, nil
  2179  }
  2180  
  2181  func (m *ExpiryFuturesMarketLaunchProposal) Marshal() (dAtA []byte, err error) {
  2182  	size := m.Size()
  2183  	dAtA = make([]byte, size)
  2184  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2185  	if err != nil {
  2186  		return nil, err
  2187  	}
  2188  	return dAtA[:n], nil
  2189  }
  2190  
  2191  func (m *ExpiryFuturesMarketLaunchProposal) MarshalTo(dAtA []byte) (int, error) {
  2192  	size := m.Size()
  2193  	return m.MarshalToSizedBuffer(dAtA[:size])
  2194  }
  2195  
  2196  func (m *ExpiryFuturesMarketLaunchProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2197  	i := len(dAtA)
  2198  	_ = i
  2199  	var l int
  2200  	_ = l
  2201  	if m.AdminInfo != nil {
  2202  		{
  2203  			size, err := m.AdminInfo.MarshalToSizedBuffer(dAtA[:i])
  2204  			if err != nil {
  2205  				return 0, err
  2206  			}
  2207  			i -= size
  2208  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2209  		}
  2210  		i--
  2211  		dAtA[i] = 0x1
  2212  		i--
  2213  		dAtA[i] = 0x8a
  2214  	}
  2215  	{
  2216  		size := m.MinNotional.Size()
  2217  		i -= size
  2218  		if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil {
  2219  			return 0, err
  2220  		}
  2221  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2222  	}
  2223  	i--
  2224  	dAtA[i] = 0x1
  2225  	i--
  2226  	dAtA[i] = 0x82
  2227  	{
  2228  		size := m.MinQuantityTickSize.Size()
  2229  		i -= size
  2230  		if _, err := m.MinQuantityTickSize.MarshalTo(dAtA[i:]); err != nil {
  2231  			return 0, err
  2232  		}
  2233  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2234  	}
  2235  	i--
  2236  	dAtA[i] = 0x7a
  2237  	{
  2238  		size := m.MinPriceTickSize.Size()
  2239  		i -= size
  2240  		if _, err := m.MinPriceTickSize.MarshalTo(dAtA[i:]); err != nil {
  2241  			return 0, err
  2242  		}
  2243  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2244  	}
  2245  	i--
  2246  	dAtA[i] = 0x72
  2247  	{
  2248  		size := m.TakerFeeRate.Size()
  2249  		i -= size
  2250  		if _, err := m.TakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2251  			return 0, err
  2252  		}
  2253  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2254  	}
  2255  	i--
  2256  	dAtA[i] = 0x6a
  2257  	{
  2258  		size := m.MakerFeeRate.Size()
  2259  		i -= size
  2260  		if _, err := m.MakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2261  			return 0, err
  2262  		}
  2263  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2264  	}
  2265  	i--
  2266  	dAtA[i] = 0x62
  2267  	{
  2268  		size := m.MaintenanceMarginRatio.Size()
  2269  		i -= size
  2270  		if _, err := m.MaintenanceMarginRatio.MarshalTo(dAtA[i:]); err != nil {
  2271  			return 0, err
  2272  		}
  2273  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2274  	}
  2275  	i--
  2276  	dAtA[i] = 0x5a
  2277  	{
  2278  		size := m.InitialMarginRatio.Size()
  2279  		i -= size
  2280  		if _, err := m.InitialMarginRatio.MarshalTo(dAtA[i:]); err != nil {
  2281  			return 0, err
  2282  		}
  2283  		i = encodeVarintProposal(dAtA, i, uint64(size))
  2284  	}
  2285  	i--
  2286  	dAtA[i] = 0x52
  2287  	if m.Expiry != 0 {
  2288  		i = encodeVarintProposal(dAtA, i, uint64(m.Expiry))
  2289  		i--
  2290  		dAtA[i] = 0x48
  2291  	}
  2292  	if m.OracleType != 0 {
  2293  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleType))
  2294  		i--
  2295  		dAtA[i] = 0x40
  2296  	}
  2297  	if m.OracleScaleFactor != 0 {
  2298  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleScaleFactor))
  2299  		i--
  2300  		dAtA[i] = 0x38
  2301  	}
  2302  	if len(m.OracleQuote) > 0 {
  2303  		i -= len(m.OracleQuote)
  2304  		copy(dAtA[i:], m.OracleQuote)
  2305  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleQuote)))
  2306  		i--
  2307  		dAtA[i] = 0x32
  2308  	}
  2309  	if len(m.OracleBase) > 0 {
  2310  		i -= len(m.OracleBase)
  2311  		copy(dAtA[i:], m.OracleBase)
  2312  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleBase)))
  2313  		i--
  2314  		dAtA[i] = 0x2a
  2315  	}
  2316  	if len(m.QuoteDenom) > 0 {
  2317  		i -= len(m.QuoteDenom)
  2318  		copy(dAtA[i:], m.QuoteDenom)
  2319  		i = encodeVarintProposal(dAtA, i, uint64(len(m.QuoteDenom)))
  2320  		i--
  2321  		dAtA[i] = 0x22
  2322  	}
  2323  	if len(m.Ticker) > 0 {
  2324  		i -= len(m.Ticker)
  2325  		copy(dAtA[i:], m.Ticker)
  2326  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Ticker)))
  2327  		i--
  2328  		dAtA[i] = 0x1a
  2329  	}
  2330  	if len(m.Description) > 0 {
  2331  		i -= len(m.Description)
  2332  		copy(dAtA[i:], m.Description)
  2333  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  2334  		i--
  2335  		dAtA[i] = 0x12
  2336  	}
  2337  	if len(m.Title) > 0 {
  2338  		i -= len(m.Title)
  2339  		copy(dAtA[i:], m.Title)
  2340  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  2341  		i--
  2342  		dAtA[i] = 0xa
  2343  	}
  2344  	return len(dAtA) - i, nil
  2345  }
  2346  
  2347  func (m *DerivativeMarketParamUpdateProposal) Marshal() (dAtA []byte, err error) {
  2348  	size := m.Size()
  2349  	dAtA = make([]byte, size)
  2350  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2351  	if err != nil {
  2352  		return nil, err
  2353  	}
  2354  	return dAtA[:n], nil
  2355  }
  2356  
  2357  func (m *DerivativeMarketParamUpdateProposal) MarshalTo(dAtA []byte) (int, error) {
  2358  	size := m.Size()
  2359  	return m.MarshalToSizedBuffer(dAtA[:size])
  2360  }
  2361  
  2362  func (m *DerivativeMarketParamUpdateProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2363  	i := len(dAtA)
  2364  	_ = i
  2365  	var l int
  2366  	_ = l
  2367  	if m.AdminInfo != nil {
  2368  		{
  2369  			size, err := m.AdminInfo.MarshalToSizedBuffer(dAtA[:i])
  2370  			if err != nil {
  2371  				return 0, err
  2372  			}
  2373  			i -= size
  2374  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2375  		}
  2376  		i--
  2377  		dAtA[i] = 0x1
  2378  		i--
  2379  		dAtA[i] = 0x8a
  2380  	}
  2381  	if m.MinNotional != nil {
  2382  		{
  2383  			size := m.MinNotional.Size()
  2384  			i -= size
  2385  			if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil {
  2386  				return 0, err
  2387  			}
  2388  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2389  		}
  2390  		i--
  2391  		dAtA[i] = 0x1
  2392  		i--
  2393  		dAtA[i] = 0x82
  2394  	}
  2395  	if len(m.Ticker) > 0 {
  2396  		i -= len(m.Ticker)
  2397  		copy(dAtA[i:], m.Ticker)
  2398  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Ticker)))
  2399  		i--
  2400  		dAtA[i] = 0x7a
  2401  	}
  2402  	if m.OracleParams != nil {
  2403  		{
  2404  			size, err := m.OracleParams.MarshalToSizedBuffer(dAtA[:i])
  2405  			if err != nil {
  2406  				return 0, err
  2407  			}
  2408  			i -= size
  2409  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2410  		}
  2411  		i--
  2412  		dAtA[i] = 0x72
  2413  	}
  2414  	if m.Status != 0 {
  2415  		i = encodeVarintProposal(dAtA, i, uint64(m.Status))
  2416  		i--
  2417  		dAtA[i] = 0x68
  2418  	}
  2419  	if m.HourlyFundingRateCap != nil {
  2420  		{
  2421  			size := m.HourlyFundingRateCap.Size()
  2422  			i -= size
  2423  			if _, err := m.HourlyFundingRateCap.MarshalTo(dAtA[i:]); err != nil {
  2424  				return 0, err
  2425  			}
  2426  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2427  		}
  2428  		i--
  2429  		dAtA[i] = 0x62
  2430  	}
  2431  	if m.HourlyInterestRate != nil {
  2432  		{
  2433  			size := m.HourlyInterestRate.Size()
  2434  			i -= size
  2435  			if _, err := m.HourlyInterestRate.MarshalTo(dAtA[i:]); err != nil {
  2436  				return 0, err
  2437  			}
  2438  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2439  		}
  2440  		i--
  2441  		dAtA[i] = 0x5a
  2442  	}
  2443  	if m.MinQuantityTickSize != nil {
  2444  		{
  2445  			size := m.MinQuantityTickSize.Size()
  2446  			i -= size
  2447  			if _, err := m.MinQuantityTickSize.MarshalTo(dAtA[i:]); err != nil {
  2448  				return 0, err
  2449  			}
  2450  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2451  		}
  2452  		i--
  2453  		dAtA[i] = 0x52
  2454  	}
  2455  	if m.MinPriceTickSize != nil {
  2456  		{
  2457  			size := m.MinPriceTickSize.Size()
  2458  			i -= size
  2459  			if _, err := m.MinPriceTickSize.MarshalTo(dAtA[i:]); err != nil {
  2460  				return 0, err
  2461  			}
  2462  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2463  		}
  2464  		i--
  2465  		dAtA[i] = 0x4a
  2466  	}
  2467  	if m.RelayerFeeShareRate != nil {
  2468  		{
  2469  			size := m.RelayerFeeShareRate.Size()
  2470  			i -= size
  2471  			if _, err := m.RelayerFeeShareRate.MarshalTo(dAtA[i:]); err != nil {
  2472  				return 0, err
  2473  			}
  2474  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2475  		}
  2476  		i--
  2477  		dAtA[i] = 0x42
  2478  	}
  2479  	if m.TakerFeeRate != nil {
  2480  		{
  2481  			size := m.TakerFeeRate.Size()
  2482  			i -= size
  2483  			if _, err := m.TakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2484  				return 0, err
  2485  			}
  2486  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2487  		}
  2488  		i--
  2489  		dAtA[i] = 0x3a
  2490  	}
  2491  	if m.MakerFeeRate != nil {
  2492  		{
  2493  			size := m.MakerFeeRate.Size()
  2494  			i -= size
  2495  			if _, err := m.MakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2496  				return 0, err
  2497  			}
  2498  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2499  		}
  2500  		i--
  2501  		dAtA[i] = 0x32
  2502  	}
  2503  	if m.MaintenanceMarginRatio != nil {
  2504  		{
  2505  			size := m.MaintenanceMarginRatio.Size()
  2506  			i -= size
  2507  			if _, err := m.MaintenanceMarginRatio.MarshalTo(dAtA[i:]); err != nil {
  2508  				return 0, err
  2509  			}
  2510  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2511  		}
  2512  		i--
  2513  		dAtA[i] = 0x2a
  2514  	}
  2515  	if m.InitialMarginRatio != nil {
  2516  		{
  2517  			size := m.InitialMarginRatio.Size()
  2518  			i -= size
  2519  			if _, err := m.InitialMarginRatio.MarshalTo(dAtA[i:]); err != nil {
  2520  				return 0, err
  2521  			}
  2522  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2523  		}
  2524  		i--
  2525  		dAtA[i] = 0x22
  2526  	}
  2527  	if len(m.MarketId) > 0 {
  2528  		i -= len(m.MarketId)
  2529  		copy(dAtA[i:], m.MarketId)
  2530  		i = encodeVarintProposal(dAtA, i, uint64(len(m.MarketId)))
  2531  		i--
  2532  		dAtA[i] = 0x1a
  2533  	}
  2534  	if len(m.Description) > 0 {
  2535  		i -= len(m.Description)
  2536  		copy(dAtA[i:], m.Description)
  2537  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  2538  		i--
  2539  		dAtA[i] = 0x12
  2540  	}
  2541  	if len(m.Title) > 0 {
  2542  		i -= len(m.Title)
  2543  		copy(dAtA[i:], m.Title)
  2544  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  2545  		i--
  2546  		dAtA[i] = 0xa
  2547  	}
  2548  	return len(dAtA) - i, nil
  2549  }
  2550  
  2551  func (m *AdminInfo) Marshal() (dAtA []byte, err error) {
  2552  	size := m.Size()
  2553  	dAtA = make([]byte, size)
  2554  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2555  	if err != nil {
  2556  		return nil, err
  2557  	}
  2558  	return dAtA[:n], nil
  2559  }
  2560  
  2561  func (m *AdminInfo) MarshalTo(dAtA []byte) (int, error) {
  2562  	size := m.Size()
  2563  	return m.MarshalToSizedBuffer(dAtA[:size])
  2564  }
  2565  
  2566  func (m *AdminInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2567  	i := len(dAtA)
  2568  	_ = i
  2569  	var l int
  2570  	_ = l
  2571  	if m.AdminPermissions != 0 {
  2572  		i = encodeVarintProposal(dAtA, i, uint64(m.AdminPermissions))
  2573  		i--
  2574  		dAtA[i] = 0x10
  2575  	}
  2576  	if len(m.Admin) > 0 {
  2577  		i -= len(m.Admin)
  2578  		copy(dAtA[i:], m.Admin)
  2579  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Admin)))
  2580  		i--
  2581  		dAtA[i] = 0xa
  2582  	}
  2583  	return len(dAtA) - i, nil
  2584  }
  2585  
  2586  func (m *MarketForcedSettlementProposal) Marshal() (dAtA []byte, err error) {
  2587  	size := m.Size()
  2588  	dAtA = make([]byte, size)
  2589  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2590  	if err != nil {
  2591  		return nil, err
  2592  	}
  2593  	return dAtA[:n], nil
  2594  }
  2595  
  2596  func (m *MarketForcedSettlementProposal) MarshalTo(dAtA []byte) (int, error) {
  2597  	size := m.Size()
  2598  	return m.MarshalToSizedBuffer(dAtA[:size])
  2599  }
  2600  
  2601  func (m *MarketForcedSettlementProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2602  	i := len(dAtA)
  2603  	_ = i
  2604  	var l int
  2605  	_ = l
  2606  	if m.SettlementPrice != nil {
  2607  		{
  2608  			size := m.SettlementPrice.Size()
  2609  			i -= size
  2610  			if _, err := m.SettlementPrice.MarshalTo(dAtA[i:]); err != nil {
  2611  				return 0, err
  2612  			}
  2613  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2614  		}
  2615  		i--
  2616  		dAtA[i] = 0x22
  2617  	}
  2618  	if len(m.MarketId) > 0 {
  2619  		i -= len(m.MarketId)
  2620  		copy(dAtA[i:], m.MarketId)
  2621  		i = encodeVarintProposal(dAtA, i, uint64(len(m.MarketId)))
  2622  		i--
  2623  		dAtA[i] = 0x1a
  2624  	}
  2625  	if len(m.Description) > 0 {
  2626  		i -= len(m.Description)
  2627  		copy(dAtA[i:], m.Description)
  2628  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  2629  		i--
  2630  		dAtA[i] = 0x12
  2631  	}
  2632  	if len(m.Title) > 0 {
  2633  		i -= len(m.Title)
  2634  		copy(dAtA[i:], m.Title)
  2635  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  2636  		i--
  2637  		dAtA[i] = 0xa
  2638  	}
  2639  	return len(dAtA) - i, nil
  2640  }
  2641  
  2642  func (m *UpdateDenomDecimalsProposal) Marshal() (dAtA []byte, err error) {
  2643  	size := m.Size()
  2644  	dAtA = make([]byte, size)
  2645  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2646  	if err != nil {
  2647  		return nil, err
  2648  	}
  2649  	return dAtA[:n], nil
  2650  }
  2651  
  2652  func (m *UpdateDenomDecimalsProposal) MarshalTo(dAtA []byte) (int, error) {
  2653  	size := m.Size()
  2654  	return m.MarshalToSizedBuffer(dAtA[:size])
  2655  }
  2656  
  2657  func (m *UpdateDenomDecimalsProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2658  	i := len(dAtA)
  2659  	_ = i
  2660  	var l int
  2661  	_ = l
  2662  	if len(m.DenomDecimals) > 0 {
  2663  		for iNdEx := len(m.DenomDecimals) - 1; iNdEx >= 0; iNdEx-- {
  2664  			{
  2665  				size, err := m.DenomDecimals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2666  				if err != nil {
  2667  					return 0, err
  2668  				}
  2669  				i -= size
  2670  				i = encodeVarintProposal(dAtA, i, uint64(size))
  2671  			}
  2672  			i--
  2673  			dAtA[i] = 0x1a
  2674  		}
  2675  	}
  2676  	if len(m.Description) > 0 {
  2677  		i -= len(m.Description)
  2678  		copy(dAtA[i:], m.Description)
  2679  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  2680  		i--
  2681  		dAtA[i] = 0x12
  2682  	}
  2683  	if len(m.Title) > 0 {
  2684  		i -= len(m.Title)
  2685  		copy(dAtA[i:], m.Title)
  2686  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  2687  		i--
  2688  		dAtA[i] = 0xa
  2689  	}
  2690  	return len(dAtA) - i, nil
  2691  }
  2692  
  2693  func (m *BinaryOptionsMarketParamUpdateProposal) Marshal() (dAtA []byte, err error) {
  2694  	size := m.Size()
  2695  	dAtA = make([]byte, size)
  2696  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2697  	if err != nil {
  2698  		return nil, err
  2699  	}
  2700  	return dAtA[:n], nil
  2701  }
  2702  
  2703  func (m *BinaryOptionsMarketParamUpdateProposal) MarshalTo(dAtA []byte) (int, error) {
  2704  	size := m.Size()
  2705  	return m.MarshalToSizedBuffer(dAtA[:size])
  2706  }
  2707  
  2708  func (m *BinaryOptionsMarketParamUpdateProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2709  	i := len(dAtA)
  2710  	_ = i
  2711  	var l int
  2712  	_ = l
  2713  	if m.MinNotional != nil {
  2714  		{
  2715  			size := m.MinNotional.Size()
  2716  			i -= size
  2717  			if _, err := m.MinNotional.MarshalTo(dAtA[i:]); err != nil {
  2718  				return 0, err
  2719  			}
  2720  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2721  		}
  2722  		i--
  2723  		dAtA[i] = 0x1
  2724  		i--
  2725  		dAtA[i] = 0x82
  2726  	}
  2727  	if len(m.Ticker) > 0 {
  2728  		i -= len(m.Ticker)
  2729  		copy(dAtA[i:], m.Ticker)
  2730  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Ticker)))
  2731  		i--
  2732  		dAtA[i] = 0x7a
  2733  	}
  2734  	if m.OracleParams != nil {
  2735  		{
  2736  			size, err := m.OracleParams.MarshalToSizedBuffer(dAtA[:i])
  2737  			if err != nil {
  2738  				return 0, err
  2739  			}
  2740  			i -= size
  2741  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2742  		}
  2743  		i--
  2744  		dAtA[i] = 0x72
  2745  	}
  2746  	if m.Status != 0 {
  2747  		i = encodeVarintProposal(dAtA, i, uint64(m.Status))
  2748  		i--
  2749  		dAtA[i] = 0x68
  2750  	}
  2751  	if len(m.Admin) > 0 {
  2752  		i -= len(m.Admin)
  2753  		copy(dAtA[i:], m.Admin)
  2754  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Admin)))
  2755  		i--
  2756  		dAtA[i] = 0x62
  2757  	}
  2758  	if m.SettlementPrice != nil {
  2759  		{
  2760  			size := m.SettlementPrice.Size()
  2761  			i -= size
  2762  			if _, err := m.SettlementPrice.MarshalTo(dAtA[i:]); err != nil {
  2763  				return 0, err
  2764  			}
  2765  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2766  		}
  2767  		i--
  2768  		dAtA[i] = 0x5a
  2769  	}
  2770  	if m.SettlementTimestamp != 0 {
  2771  		i = encodeVarintProposal(dAtA, i, uint64(m.SettlementTimestamp))
  2772  		i--
  2773  		dAtA[i] = 0x50
  2774  	}
  2775  	if m.ExpirationTimestamp != 0 {
  2776  		i = encodeVarintProposal(dAtA, i, uint64(m.ExpirationTimestamp))
  2777  		i--
  2778  		dAtA[i] = 0x48
  2779  	}
  2780  	if m.MinQuantityTickSize != nil {
  2781  		{
  2782  			size := m.MinQuantityTickSize.Size()
  2783  			i -= size
  2784  			if _, err := m.MinQuantityTickSize.MarshalTo(dAtA[i:]); err != nil {
  2785  				return 0, err
  2786  			}
  2787  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2788  		}
  2789  		i--
  2790  		dAtA[i] = 0x42
  2791  	}
  2792  	if m.MinPriceTickSize != nil {
  2793  		{
  2794  			size := m.MinPriceTickSize.Size()
  2795  			i -= size
  2796  			if _, err := m.MinPriceTickSize.MarshalTo(dAtA[i:]); err != nil {
  2797  				return 0, err
  2798  			}
  2799  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2800  		}
  2801  		i--
  2802  		dAtA[i] = 0x3a
  2803  	}
  2804  	if m.RelayerFeeShareRate != nil {
  2805  		{
  2806  			size := m.RelayerFeeShareRate.Size()
  2807  			i -= size
  2808  			if _, err := m.RelayerFeeShareRate.MarshalTo(dAtA[i:]); err != nil {
  2809  				return 0, err
  2810  			}
  2811  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2812  		}
  2813  		i--
  2814  		dAtA[i] = 0x32
  2815  	}
  2816  	if m.TakerFeeRate != nil {
  2817  		{
  2818  			size := m.TakerFeeRate.Size()
  2819  			i -= size
  2820  			if _, err := m.TakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2821  				return 0, err
  2822  			}
  2823  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2824  		}
  2825  		i--
  2826  		dAtA[i] = 0x2a
  2827  	}
  2828  	if m.MakerFeeRate != nil {
  2829  		{
  2830  			size := m.MakerFeeRate.Size()
  2831  			i -= size
  2832  			if _, err := m.MakerFeeRate.MarshalTo(dAtA[i:]); err != nil {
  2833  				return 0, err
  2834  			}
  2835  			i = encodeVarintProposal(dAtA, i, uint64(size))
  2836  		}
  2837  		i--
  2838  		dAtA[i] = 0x22
  2839  	}
  2840  	if len(m.MarketId) > 0 {
  2841  		i -= len(m.MarketId)
  2842  		copy(dAtA[i:], m.MarketId)
  2843  		i = encodeVarintProposal(dAtA, i, uint64(len(m.MarketId)))
  2844  		i--
  2845  		dAtA[i] = 0x1a
  2846  	}
  2847  	if len(m.Description) > 0 {
  2848  		i -= len(m.Description)
  2849  		copy(dAtA[i:], m.Description)
  2850  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  2851  		i--
  2852  		dAtA[i] = 0x12
  2853  	}
  2854  	if len(m.Title) > 0 {
  2855  		i -= len(m.Title)
  2856  		copy(dAtA[i:], m.Title)
  2857  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  2858  		i--
  2859  		dAtA[i] = 0xa
  2860  	}
  2861  	return len(dAtA) - i, nil
  2862  }
  2863  
  2864  func (m *ProviderOracleParams) Marshal() (dAtA []byte, err error) {
  2865  	size := m.Size()
  2866  	dAtA = make([]byte, size)
  2867  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2868  	if err != nil {
  2869  		return nil, err
  2870  	}
  2871  	return dAtA[:n], nil
  2872  }
  2873  
  2874  func (m *ProviderOracleParams) MarshalTo(dAtA []byte) (int, error) {
  2875  	size := m.Size()
  2876  	return m.MarshalToSizedBuffer(dAtA[:size])
  2877  }
  2878  
  2879  func (m *ProviderOracleParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2880  	i := len(dAtA)
  2881  	_ = i
  2882  	var l int
  2883  	_ = l
  2884  	if m.OracleType != 0 {
  2885  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleType))
  2886  		i--
  2887  		dAtA[i] = 0x20
  2888  	}
  2889  	if m.OracleScaleFactor != 0 {
  2890  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleScaleFactor))
  2891  		i--
  2892  		dAtA[i] = 0x18
  2893  	}
  2894  	if len(m.Provider) > 0 {
  2895  		i -= len(m.Provider)
  2896  		copy(dAtA[i:], m.Provider)
  2897  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Provider)))
  2898  		i--
  2899  		dAtA[i] = 0x12
  2900  	}
  2901  	if len(m.Symbol) > 0 {
  2902  		i -= len(m.Symbol)
  2903  		copy(dAtA[i:], m.Symbol)
  2904  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Symbol)))
  2905  		i--
  2906  		dAtA[i] = 0xa
  2907  	}
  2908  	return len(dAtA) - i, nil
  2909  }
  2910  
  2911  func (m *OracleParams) Marshal() (dAtA []byte, err error) {
  2912  	size := m.Size()
  2913  	dAtA = make([]byte, size)
  2914  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2915  	if err != nil {
  2916  		return nil, err
  2917  	}
  2918  	return dAtA[:n], nil
  2919  }
  2920  
  2921  func (m *OracleParams) MarshalTo(dAtA []byte) (int, error) {
  2922  	size := m.Size()
  2923  	return m.MarshalToSizedBuffer(dAtA[:size])
  2924  }
  2925  
  2926  func (m *OracleParams) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2927  	i := len(dAtA)
  2928  	_ = i
  2929  	var l int
  2930  	_ = l
  2931  	if m.OracleType != 0 {
  2932  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleType))
  2933  		i--
  2934  		dAtA[i] = 0x20
  2935  	}
  2936  	if m.OracleScaleFactor != 0 {
  2937  		i = encodeVarintProposal(dAtA, i, uint64(m.OracleScaleFactor))
  2938  		i--
  2939  		dAtA[i] = 0x18
  2940  	}
  2941  	if len(m.OracleQuote) > 0 {
  2942  		i -= len(m.OracleQuote)
  2943  		copy(dAtA[i:], m.OracleQuote)
  2944  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleQuote)))
  2945  		i--
  2946  		dAtA[i] = 0x12
  2947  	}
  2948  	if len(m.OracleBase) > 0 {
  2949  		i -= len(m.OracleBase)
  2950  		copy(dAtA[i:], m.OracleBase)
  2951  		i = encodeVarintProposal(dAtA, i, uint64(len(m.OracleBase)))
  2952  		i--
  2953  		dAtA[i] = 0xa
  2954  	}
  2955  	return len(dAtA) - i, nil
  2956  }
  2957  
  2958  func (m *TradingRewardCampaignLaunchProposal) Marshal() (dAtA []byte, err error) {
  2959  	size := m.Size()
  2960  	dAtA = make([]byte, size)
  2961  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2962  	if err != nil {
  2963  		return nil, err
  2964  	}
  2965  	return dAtA[:n], nil
  2966  }
  2967  
  2968  func (m *TradingRewardCampaignLaunchProposal) MarshalTo(dAtA []byte) (int, error) {
  2969  	size := m.Size()
  2970  	return m.MarshalToSizedBuffer(dAtA[:size])
  2971  }
  2972  
  2973  func (m *TradingRewardCampaignLaunchProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2974  	i := len(dAtA)
  2975  	_ = i
  2976  	var l int
  2977  	_ = l
  2978  	if len(m.CampaignRewardPools) > 0 {
  2979  		for iNdEx := len(m.CampaignRewardPools) - 1; iNdEx >= 0; iNdEx-- {
  2980  			{
  2981  				size, err := m.CampaignRewardPools[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2982  				if err != nil {
  2983  					return 0, err
  2984  				}
  2985  				i -= size
  2986  				i = encodeVarintProposal(dAtA, i, uint64(size))
  2987  			}
  2988  			i--
  2989  			dAtA[i] = 0x22
  2990  		}
  2991  	}
  2992  	if m.CampaignInfo != nil {
  2993  		{
  2994  			size, err := m.CampaignInfo.MarshalToSizedBuffer(dAtA[:i])
  2995  			if err != nil {
  2996  				return 0, err
  2997  			}
  2998  			i -= size
  2999  			i = encodeVarintProposal(dAtA, i, uint64(size))
  3000  		}
  3001  		i--
  3002  		dAtA[i] = 0x1a
  3003  	}
  3004  	if len(m.Description) > 0 {
  3005  		i -= len(m.Description)
  3006  		copy(dAtA[i:], m.Description)
  3007  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  3008  		i--
  3009  		dAtA[i] = 0x12
  3010  	}
  3011  	if len(m.Title) > 0 {
  3012  		i -= len(m.Title)
  3013  		copy(dAtA[i:], m.Title)
  3014  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  3015  		i--
  3016  		dAtA[i] = 0xa
  3017  	}
  3018  	return len(dAtA) - i, nil
  3019  }
  3020  
  3021  func (m *TradingRewardCampaignUpdateProposal) Marshal() (dAtA []byte, err error) {
  3022  	size := m.Size()
  3023  	dAtA = make([]byte, size)
  3024  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3025  	if err != nil {
  3026  		return nil, err
  3027  	}
  3028  	return dAtA[:n], nil
  3029  }
  3030  
  3031  func (m *TradingRewardCampaignUpdateProposal) MarshalTo(dAtA []byte) (int, error) {
  3032  	size := m.Size()
  3033  	return m.MarshalToSizedBuffer(dAtA[:size])
  3034  }
  3035  
  3036  func (m *TradingRewardCampaignUpdateProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3037  	i := len(dAtA)
  3038  	_ = i
  3039  	var l int
  3040  	_ = l
  3041  	if len(m.CampaignRewardPoolsUpdates) > 0 {
  3042  		for iNdEx := len(m.CampaignRewardPoolsUpdates) - 1; iNdEx >= 0; iNdEx-- {
  3043  			{
  3044  				size, err := m.CampaignRewardPoolsUpdates[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3045  				if err != nil {
  3046  					return 0, err
  3047  				}
  3048  				i -= size
  3049  				i = encodeVarintProposal(dAtA, i, uint64(size))
  3050  			}
  3051  			i--
  3052  			dAtA[i] = 0x2a
  3053  		}
  3054  	}
  3055  	if len(m.CampaignRewardPoolsAdditions) > 0 {
  3056  		for iNdEx := len(m.CampaignRewardPoolsAdditions) - 1; iNdEx >= 0; iNdEx-- {
  3057  			{
  3058  				size, err := m.CampaignRewardPoolsAdditions[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3059  				if err != nil {
  3060  					return 0, err
  3061  				}
  3062  				i -= size
  3063  				i = encodeVarintProposal(dAtA, i, uint64(size))
  3064  			}
  3065  			i--
  3066  			dAtA[i] = 0x22
  3067  		}
  3068  	}
  3069  	if m.CampaignInfo != nil {
  3070  		{
  3071  			size, err := m.CampaignInfo.MarshalToSizedBuffer(dAtA[:i])
  3072  			if err != nil {
  3073  				return 0, err
  3074  			}
  3075  			i -= size
  3076  			i = encodeVarintProposal(dAtA, i, uint64(size))
  3077  		}
  3078  		i--
  3079  		dAtA[i] = 0x1a
  3080  	}
  3081  	if len(m.Description) > 0 {
  3082  		i -= len(m.Description)
  3083  		copy(dAtA[i:], m.Description)
  3084  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  3085  		i--
  3086  		dAtA[i] = 0x12
  3087  	}
  3088  	if len(m.Title) > 0 {
  3089  		i -= len(m.Title)
  3090  		copy(dAtA[i:], m.Title)
  3091  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  3092  		i--
  3093  		dAtA[i] = 0xa
  3094  	}
  3095  	return len(dAtA) - i, nil
  3096  }
  3097  
  3098  func (m *RewardPointUpdate) Marshal() (dAtA []byte, err error) {
  3099  	size := m.Size()
  3100  	dAtA = make([]byte, size)
  3101  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3102  	if err != nil {
  3103  		return nil, err
  3104  	}
  3105  	return dAtA[:n], nil
  3106  }
  3107  
  3108  func (m *RewardPointUpdate) MarshalTo(dAtA []byte) (int, error) {
  3109  	size := m.Size()
  3110  	return m.MarshalToSizedBuffer(dAtA[:size])
  3111  }
  3112  
  3113  func (m *RewardPointUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3114  	i := len(dAtA)
  3115  	_ = i
  3116  	var l int
  3117  	_ = l
  3118  	{
  3119  		size := m.NewPoints.Size()
  3120  		i -= size
  3121  		if _, err := m.NewPoints.MarshalTo(dAtA[i:]); err != nil {
  3122  			return 0, err
  3123  		}
  3124  		i = encodeVarintProposal(dAtA, i, uint64(size))
  3125  	}
  3126  	i--
  3127  	dAtA[i] = 0x62
  3128  	if len(m.AccountAddress) > 0 {
  3129  		i -= len(m.AccountAddress)
  3130  		copy(dAtA[i:], m.AccountAddress)
  3131  		i = encodeVarintProposal(dAtA, i, uint64(len(m.AccountAddress)))
  3132  		i--
  3133  		dAtA[i] = 0xa
  3134  	}
  3135  	return len(dAtA) - i, nil
  3136  }
  3137  
  3138  func (m *TradingRewardPendingPointsUpdateProposal) Marshal() (dAtA []byte, err error) {
  3139  	size := m.Size()
  3140  	dAtA = make([]byte, size)
  3141  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3142  	if err != nil {
  3143  		return nil, err
  3144  	}
  3145  	return dAtA[:n], nil
  3146  }
  3147  
  3148  func (m *TradingRewardPendingPointsUpdateProposal) MarshalTo(dAtA []byte) (int, error) {
  3149  	size := m.Size()
  3150  	return m.MarshalToSizedBuffer(dAtA[:size])
  3151  }
  3152  
  3153  func (m *TradingRewardPendingPointsUpdateProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3154  	i := len(dAtA)
  3155  	_ = i
  3156  	var l int
  3157  	_ = l
  3158  	if len(m.RewardPointUpdates) > 0 {
  3159  		for iNdEx := len(m.RewardPointUpdates) - 1; iNdEx >= 0; iNdEx-- {
  3160  			{
  3161  				size, err := m.RewardPointUpdates[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3162  				if err != nil {
  3163  					return 0, err
  3164  				}
  3165  				i -= size
  3166  				i = encodeVarintProposal(dAtA, i, uint64(size))
  3167  			}
  3168  			i--
  3169  			dAtA[i] = 0x22
  3170  		}
  3171  	}
  3172  	if m.PendingPoolTimestamp != 0 {
  3173  		i = encodeVarintProposal(dAtA, i, uint64(m.PendingPoolTimestamp))
  3174  		i--
  3175  		dAtA[i] = 0x18
  3176  	}
  3177  	if len(m.Description) > 0 {
  3178  		i -= len(m.Description)
  3179  		copy(dAtA[i:], m.Description)
  3180  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  3181  		i--
  3182  		dAtA[i] = 0x12
  3183  	}
  3184  	if len(m.Title) > 0 {
  3185  		i -= len(m.Title)
  3186  		copy(dAtA[i:], m.Title)
  3187  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  3188  		i--
  3189  		dAtA[i] = 0xa
  3190  	}
  3191  	return len(dAtA) - i, nil
  3192  }
  3193  
  3194  func (m *FeeDiscountProposal) Marshal() (dAtA []byte, err error) {
  3195  	size := m.Size()
  3196  	dAtA = make([]byte, size)
  3197  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3198  	if err != nil {
  3199  		return nil, err
  3200  	}
  3201  	return dAtA[:n], nil
  3202  }
  3203  
  3204  func (m *FeeDiscountProposal) MarshalTo(dAtA []byte) (int, error) {
  3205  	size := m.Size()
  3206  	return m.MarshalToSizedBuffer(dAtA[:size])
  3207  }
  3208  
  3209  func (m *FeeDiscountProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3210  	i := len(dAtA)
  3211  	_ = i
  3212  	var l int
  3213  	_ = l
  3214  	if m.Schedule != nil {
  3215  		{
  3216  			size, err := m.Schedule.MarshalToSizedBuffer(dAtA[:i])
  3217  			if err != nil {
  3218  				return 0, err
  3219  			}
  3220  			i -= size
  3221  			i = encodeVarintProposal(dAtA, i, uint64(size))
  3222  		}
  3223  		i--
  3224  		dAtA[i] = 0x1a
  3225  	}
  3226  	if len(m.Description) > 0 {
  3227  		i -= len(m.Description)
  3228  		copy(dAtA[i:], m.Description)
  3229  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  3230  		i--
  3231  		dAtA[i] = 0x12
  3232  	}
  3233  	if len(m.Title) > 0 {
  3234  		i -= len(m.Title)
  3235  		copy(dAtA[i:], m.Title)
  3236  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  3237  		i--
  3238  		dAtA[i] = 0xa
  3239  	}
  3240  	return len(dAtA) - i, nil
  3241  }
  3242  
  3243  func (m *BatchCommunityPoolSpendProposal) Marshal() (dAtA []byte, err error) {
  3244  	size := m.Size()
  3245  	dAtA = make([]byte, size)
  3246  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3247  	if err != nil {
  3248  		return nil, err
  3249  	}
  3250  	return dAtA[:n], nil
  3251  }
  3252  
  3253  func (m *BatchCommunityPoolSpendProposal) MarshalTo(dAtA []byte) (int, error) {
  3254  	size := m.Size()
  3255  	return m.MarshalToSizedBuffer(dAtA[:size])
  3256  }
  3257  
  3258  func (m *BatchCommunityPoolSpendProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3259  	i := len(dAtA)
  3260  	_ = i
  3261  	var l int
  3262  	_ = l
  3263  	if len(m.Proposals) > 0 {
  3264  		for iNdEx := len(m.Proposals) - 1; iNdEx >= 0; iNdEx-- {
  3265  			{
  3266  				size, err := m.Proposals[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3267  				if err != nil {
  3268  					return 0, err
  3269  				}
  3270  				i -= size
  3271  				i = encodeVarintProposal(dAtA, i, uint64(size))
  3272  			}
  3273  			i--
  3274  			dAtA[i] = 0x1a
  3275  		}
  3276  	}
  3277  	if len(m.Description) > 0 {
  3278  		i -= len(m.Description)
  3279  		copy(dAtA[i:], m.Description)
  3280  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  3281  		i--
  3282  		dAtA[i] = 0x12
  3283  	}
  3284  	if len(m.Title) > 0 {
  3285  		i -= len(m.Title)
  3286  		copy(dAtA[i:], m.Title)
  3287  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  3288  		i--
  3289  		dAtA[i] = 0xa
  3290  	}
  3291  	return len(dAtA) - i, nil
  3292  }
  3293  
  3294  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) Marshal() (dAtA []byte, err error) {
  3295  	size := m.Size()
  3296  	dAtA = make([]byte, size)
  3297  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  3298  	if err != nil {
  3299  		return nil, err
  3300  	}
  3301  	return dAtA[:n], nil
  3302  }
  3303  
  3304  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) MarshalTo(dAtA []byte) (int, error) {
  3305  	size := m.Size()
  3306  	return m.MarshalToSizedBuffer(dAtA[:size])
  3307  }
  3308  
  3309  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  3310  	i := len(dAtA)
  3311  	_ = i
  3312  	var l int
  3313  	_ = l
  3314  	if len(m.MarketFeeMultipliers) > 0 {
  3315  		for iNdEx := len(m.MarketFeeMultipliers) - 1; iNdEx >= 0; iNdEx-- {
  3316  			{
  3317  				size, err := m.MarketFeeMultipliers[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  3318  				if err != nil {
  3319  					return 0, err
  3320  				}
  3321  				i -= size
  3322  				i = encodeVarintProposal(dAtA, i, uint64(size))
  3323  			}
  3324  			i--
  3325  			dAtA[i] = 0x1a
  3326  		}
  3327  	}
  3328  	if len(m.Description) > 0 {
  3329  		i -= len(m.Description)
  3330  		copy(dAtA[i:], m.Description)
  3331  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Description)))
  3332  		i--
  3333  		dAtA[i] = 0x12
  3334  	}
  3335  	if len(m.Title) > 0 {
  3336  		i -= len(m.Title)
  3337  		copy(dAtA[i:], m.Title)
  3338  		i = encodeVarintProposal(dAtA, i, uint64(len(m.Title)))
  3339  		i--
  3340  		dAtA[i] = 0xa
  3341  	}
  3342  	return len(dAtA) - i, nil
  3343  }
  3344  
  3345  func encodeVarintProposal(dAtA []byte, offset int, v uint64) int {
  3346  	offset -= sovProposal(v)
  3347  	base := offset
  3348  	for v >= 1<<7 {
  3349  		dAtA[offset] = uint8(v&0x7f | 0x80)
  3350  		v >>= 7
  3351  		offset++
  3352  	}
  3353  	dAtA[offset] = uint8(v)
  3354  	return base
  3355  }
  3356  func (m *SpotMarketParamUpdateProposal) Size() (n int) {
  3357  	if m == nil {
  3358  		return 0
  3359  	}
  3360  	var l int
  3361  	_ = l
  3362  	l = len(m.Title)
  3363  	if l > 0 {
  3364  		n += 1 + l + sovProposal(uint64(l))
  3365  	}
  3366  	l = len(m.Description)
  3367  	if l > 0 {
  3368  		n += 1 + l + sovProposal(uint64(l))
  3369  	}
  3370  	l = len(m.MarketId)
  3371  	if l > 0 {
  3372  		n += 1 + l + sovProposal(uint64(l))
  3373  	}
  3374  	if m.MakerFeeRate != nil {
  3375  		l = m.MakerFeeRate.Size()
  3376  		n += 1 + l + sovProposal(uint64(l))
  3377  	}
  3378  	if m.TakerFeeRate != nil {
  3379  		l = m.TakerFeeRate.Size()
  3380  		n += 1 + l + sovProposal(uint64(l))
  3381  	}
  3382  	if m.RelayerFeeShareRate != nil {
  3383  		l = m.RelayerFeeShareRate.Size()
  3384  		n += 1 + l + sovProposal(uint64(l))
  3385  	}
  3386  	if m.MinPriceTickSize != nil {
  3387  		l = m.MinPriceTickSize.Size()
  3388  		n += 1 + l + sovProposal(uint64(l))
  3389  	}
  3390  	if m.MinQuantityTickSize != nil {
  3391  		l = m.MinQuantityTickSize.Size()
  3392  		n += 1 + l + sovProposal(uint64(l))
  3393  	}
  3394  	if m.Status != 0 {
  3395  		n += 1 + sovProposal(uint64(m.Status))
  3396  	}
  3397  	l = len(m.Ticker)
  3398  	if l > 0 {
  3399  		n += 1 + l + sovProposal(uint64(l))
  3400  	}
  3401  	if m.MinNotional != nil {
  3402  		l = m.MinNotional.Size()
  3403  		n += 1 + l + sovProposal(uint64(l))
  3404  	}
  3405  	if m.AdminInfo != nil {
  3406  		l = m.AdminInfo.Size()
  3407  		n += 1 + l + sovProposal(uint64(l))
  3408  	}
  3409  	return n
  3410  }
  3411  
  3412  func (m *ExchangeEnableProposal) Size() (n int) {
  3413  	if m == nil {
  3414  		return 0
  3415  	}
  3416  	var l int
  3417  	_ = l
  3418  	l = len(m.Title)
  3419  	if l > 0 {
  3420  		n += 1 + l + sovProposal(uint64(l))
  3421  	}
  3422  	l = len(m.Description)
  3423  	if l > 0 {
  3424  		n += 1 + l + sovProposal(uint64(l))
  3425  	}
  3426  	if m.ExchangeType != 0 {
  3427  		n += 1 + sovProposal(uint64(m.ExchangeType))
  3428  	}
  3429  	return n
  3430  }
  3431  
  3432  func (m *BatchExchangeModificationProposal) Size() (n int) {
  3433  	if m == nil {
  3434  		return 0
  3435  	}
  3436  	var l int
  3437  	_ = l
  3438  	l = len(m.Title)
  3439  	if l > 0 {
  3440  		n += 1 + l + sovProposal(uint64(l))
  3441  	}
  3442  	l = len(m.Description)
  3443  	if l > 0 {
  3444  		n += 1 + l + sovProposal(uint64(l))
  3445  	}
  3446  	if len(m.SpotMarketParamUpdateProposals) > 0 {
  3447  		for _, e := range m.SpotMarketParamUpdateProposals {
  3448  			l = e.Size()
  3449  			n += 1 + l + sovProposal(uint64(l))
  3450  		}
  3451  	}
  3452  	if len(m.DerivativeMarketParamUpdateProposals) > 0 {
  3453  		for _, e := range m.DerivativeMarketParamUpdateProposals {
  3454  			l = e.Size()
  3455  			n += 1 + l + sovProposal(uint64(l))
  3456  		}
  3457  	}
  3458  	if len(m.SpotMarketLaunchProposals) > 0 {
  3459  		for _, e := range m.SpotMarketLaunchProposals {
  3460  			l = e.Size()
  3461  			n += 1 + l + sovProposal(uint64(l))
  3462  		}
  3463  	}
  3464  	if len(m.PerpetualMarketLaunchProposals) > 0 {
  3465  		for _, e := range m.PerpetualMarketLaunchProposals {
  3466  			l = e.Size()
  3467  			n += 1 + l + sovProposal(uint64(l))
  3468  		}
  3469  	}
  3470  	if len(m.ExpiryFuturesMarketLaunchProposals) > 0 {
  3471  		for _, e := range m.ExpiryFuturesMarketLaunchProposals {
  3472  			l = e.Size()
  3473  			n += 1 + l + sovProposal(uint64(l))
  3474  		}
  3475  	}
  3476  	if m.TradingRewardCampaignUpdateProposal != nil {
  3477  		l = m.TradingRewardCampaignUpdateProposal.Size()
  3478  		n += 1 + l + sovProposal(uint64(l))
  3479  	}
  3480  	if len(m.BinaryOptionsMarketLaunchProposals) > 0 {
  3481  		for _, e := range m.BinaryOptionsMarketLaunchProposals {
  3482  			l = e.Size()
  3483  			n += 1 + l + sovProposal(uint64(l))
  3484  		}
  3485  	}
  3486  	if len(m.BinaryOptionsParamUpdateProposals) > 0 {
  3487  		for _, e := range m.BinaryOptionsParamUpdateProposals {
  3488  			l = e.Size()
  3489  			n += 1 + l + sovProposal(uint64(l))
  3490  		}
  3491  	}
  3492  	if m.DenomDecimalsUpdateProposal != nil {
  3493  		l = m.DenomDecimalsUpdateProposal.Size()
  3494  		n += 1 + l + sovProposal(uint64(l))
  3495  	}
  3496  	if m.FeeDiscountProposal != nil {
  3497  		l = m.FeeDiscountProposal.Size()
  3498  		n += 1 + l + sovProposal(uint64(l))
  3499  	}
  3500  	if len(m.MarketForcedSettlementProposals) > 0 {
  3501  		for _, e := range m.MarketForcedSettlementProposals {
  3502  			l = e.Size()
  3503  			n += 1 + l + sovProposal(uint64(l))
  3504  		}
  3505  	}
  3506  	return n
  3507  }
  3508  
  3509  func (m *SpotMarketLaunchProposal) Size() (n int) {
  3510  	if m == nil {
  3511  		return 0
  3512  	}
  3513  	var l int
  3514  	_ = l
  3515  	l = len(m.Title)
  3516  	if l > 0 {
  3517  		n += 1 + l + sovProposal(uint64(l))
  3518  	}
  3519  	l = len(m.Description)
  3520  	if l > 0 {
  3521  		n += 1 + l + sovProposal(uint64(l))
  3522  	}
  3523  	l = len(m.Ticker)
  3524  	if l > 0 {
  3525  		n += 1 + l + sovProposal(uint64(l))
  3526  	}
  3527  	l = len(m.BaseDenom)
  3528  	if l > 0 {
  3529  		n += 1 + l + sovProposal(uint64(l))
  3530  	}
  3531  	l = len(m.QuoteDenom)
  3532  	if l > 0 {
  3533  		n += 1 + l + sovProposal(uint64(l))
  3534  	}
  3535  	l = m.MinPriceTickSize.Size()
  3536  	n += 1 + l + sovProposal(uint64(l))
  3537  	l = m.MinQuantityTickSize.Size()
  3538  	n += 1 + l + sovProposal(uint64(l))
  3539  	if m.MakerFeeRate != nil {
  3540  		l = m.MakerFeeRate.Size()
  3541  		n += 1 + l + sovProposal(uint64(l))
  3542  	}
  3543  	if m.TakerFeeRate != nil {
  3544  		l = m.TakerFeeRate.Size()
  3545  		n += 1 + l + sovProposal(uint64(l))
  3546  	}
  3547  	l = m.MinNotional.Size()
  3548  	n += 1 + l + sovProposal(uint64(l))
  3549  	if m.AdminInfo != nil {
  3550  		l = m.AdminInfo.Size()
  3551  		n += 1 + l + sovProposal(uint64(l))
  3552  	}
  3553  	return n
  3554  }
  3555  
  3556  func (m *PerpetualMarketLaunchProposal) Size() (n int) {
  3557  	if m == nil {
  3558  		return 0
  3559  	}
  3560  	var l int
  3561  	_ = l
  3562  	l = len(m.Title)
  3563  	if l > 0 {
  3564  		n += 1 + l + sovProposal(uint64(l))
  3565  	}
  3566  	l = len(m.Description)
  3567  	if l > 0 {
  3568  		n += 1 + l + sovProposal(uint64(l))
  3569  	}
  3570  	l = len(m.Ticker)
  3571  	if l > 0 {
  3572  		n += 1 + l + sovProposal(uint64(l))
  3573  	}
  3574  	l = len(m.QuoteDenom)
  3575  	if l > 0 {
  3576  		n += 1 + l + sovProposal(uint64(l))
  3577  	}
  3578  	l = len(m.OracleBase)
  3579  	if l > 0 {
  3580  		n += 1 + l + sovProposal(uint64(l))
  3581  	}
  3582  	l = len(m.OracleQuote)
  3583  	if l > 0 {
  3584  		n += 1 + l + sovProposal(uint64(l))
  3585  	}
  3586  	if m.OracleScaleFactor != 0 {
  3587  		n += 1 + sovProposal(uint64(m.OracleScaleFactor))
  3588  	}
  3589  	if m.OracleType != 0 {
  3590  		n += 1 + sovProposal(uint64(m.OracleType))
  3591  	}
  3592  	l = m.InitialMarginRatio.Size()
  3593  	n += 1 + l + sovProposal(uint64(l))
  3594  	l = m.MaintenanceMarginRatio.Size()
  3595  	n += 1 + l + sovProposal(uint64(l))
  3596  	l = m.MakerFeeRate.Size()
  3597  	n += 1 + l + sovProposal(uint64(l))
  3598  	l = m.TakerFeeRate.Size()
  3599  	n += 1 + l + sovProposal(uint64(l))
  3600  	l = m.MinPriceTickSize.Size()
  3601  	n += 1 + l + sovProposal(uint64(l))
  3602  	l = m.MinQuantityTickSize.Size()
  3603  	n += 1 + l + sovProposal(uint64(l))
  3604  	l = m.MinNotional.Size()
  3605  	n += 1 + l + sovProposal(uint64(l))
  3606  	if m.AdminInfo != nil {
  3607  		l = m.AdminInfo.Size()
  3608  		n += 2 + l + sovProposal(uint64(l))
  3609  	}
  3610  	return n
  3611  }
  3612  
  3613  func (m *BinaryOptionsMarketLaunchProposal) Size() (n int) {
  3614  	if m == nil {
  3615  		return 0
  3616  	}
  3617  	var l int
  3618  	_ = l
  3619  	l = len(m.Title)
  3620  	if l > 0 {
  3621  		n += 1 + l + sovProposal(uint64(l))
  3622  	}
  3623  	l = len(m.Description)
  3624  	if l > 0 {
  3625  		n += 1 + l + sovProposal(uint64(l))
  3626  	}
  3627  	l = len(m.Ticker)
  3628  	if l > 0 {
  3629  		n += 1 + l + sovProposal(uint64(l))
  3630  	}
  3631  	l = len(m.OracleSymbol)
  3632  	if l > 0 {
  3633  		n += 1 + l + sovProposal(uint64(l))
  3634  	}
  3635  	l = len(m.OracleProvider)
  3636  	if l > 0 {
  3637  		n += 1 + l + sovProposal(uint64(l))
  3638  	}
  3639  	if m.OracleType != 0 {
  3640  		n += 1 + sovProposal(uint64(m.OracleType))
  3641  	}
  3642  	if m.OracleScaleFactor != 0 {
  3643  		n += 1 + sovProposal(uint64(m.OracleScaleFactor))
  3644  	}
  3645  	if m.ExpirationTimestamp != 0 {
  3646  		n += 1 + sovProposal(uint64(m.ExpirationTimestamp))
  3647  	}
  3648  	if m.SettlementTimestamp != 0 {
  3649  		n += 1 + sovProposal(uint64(m.SettlementTimestamp))
  3650  	}
  3651  	l = len(m.Admin)
  3652  	if l > 0 {
  3653  		n += 1 + l + sovProposal(uint64(l))
  3654  	}
  3655  	l = len(m.QuoteDenom)
  3656  	if l > 0 {
  3657  		n += 1 + l + sovProposal(uint64(l))
  3658  	}
  3659  	l = m.MakerFeeRate.Size()
  3660  	n += 1 + l + sovProposal(uint64(l))
  3661  	l = m.TakerFeeRate.Size()
  3662  	n += 1 + l + sovProposal(uint64(l))
  3663  	l = m.MinPriceTickSize.Size()
  3664  	n += 1 + l + sovProposal(uint64(l))
  3665  	l = m.MinQuantityTickSize.Size()
  3666  	n += 1 + l + sovProposal(uint64(l))
  3667  	l = m.MinNotional.Size()
  3668  	n += 2 + l + sovProposal(uint64(l))
  3669  	if m.AdminPermissions != 0 {
  3670  		n += 2 + sovProposal(uint64(m.AdminPermissions))
  3671  	}
  3672  	return n
  3673  }
  3674  
  3675  func (m *ExpiryFuturesMarketLaunchProposal) Size() (n int) {
  3676  	if m == nil {
  3677  		return 0
  3678  	}
  3679  	var l int
  3680  	_ = l
  3681  	l = len(m.Title)
  3682  	if l > 0 {
  3683  		n += 1 + l + sovProposal(uint64(l))
  3684  	}
  3685  	l = len(m.Description)
  3686  	if l > 0 {
  3687  		n += 1 + l + sovProposal(uint64(l))
  3688  	}
  3689  	l = len(m.Ticker)
  3690  	if l > 0 {
  3691  		n += 1 + l + sovProposal(uint64(l))
  3692  	}
  3693  	l = len(m.QuoteDenom)
  3694  	if l > 0 {
  3695  		n += 1 + l + sovProposal(uint64(l))
  3696  	}
  3697  	l = len(m.OracleBase)
  3698  	if l > 0 {
  3699  		n += 1 + l + sovProposal(uint64(l))
  3700  	}
  3701  	l = len(m.OracleQuote)
  3702  	if l > 0 {
  3703  		n += 1 + l + sovProposal(uint64(l))
  3704  	}
  3705  	if m.OracleScaleFactor != 0 {
  3706  		n += 1 + sovProposal(uint64(m.OracleScaleFactor))
  3707  	}
  3708  	if m.OracleType != 0 {
  3709  		n += 1 + sovProposal(uint64(m.OracleType))
  3710  	}
  3711  	if m.Expiry != 0 {
  3712  		n += 1 + sovProposal(uint64(m.Expiry))
  3713  	}
  3714  	l = m.InitialMarginRatio.Size()
  3715  	n += 1 + l + sovProposal(uint64(l))
  3716  	l = m.MaintenanceMarginRatio.Size()
  3717  	n += 1 + l + sovProposal(uint64(l))
  3718  	l = m.MakerFeeRate.Size()
  3719  	n += 1 + l + sovProposal(uint64(l))
  3720  	l = m.TakerFeeRate.Size()
  3721  	n += 1 + l + sovProposal(uint64(l))
  3722  	l = m.MinPriceTickSize.Size()
  3723  	n += 1 + l + sovProposal(uint64(l))
  3724  	l = m.MinQuantityTickSize.Size()
  3725  	n += 1 + l + sovProposal(uint64(l))
  3726  	l = m.MinNotional.Size()
  3727  	n += 2 + l + sovProposal(uint64(l))
  3728  	if m.AdminInfo != nil {
  3729  		l = m.AdminInfo.Size()
  3730  		n += 2 + l + sovProposal(uint64(l))
  3731  	}
  3732  	return n
  3733  }
  3734  
  3735  func (m *DerivativeMarketParamUpdateProposal) Size() (n int) {
  3736  	if m == nil {
  3737  		return 0
  3738  	}
  3739  	var l int
  3740  	_ = l
  3741  	l = len(m.Title)
  3742  	if l > 0 {
  3743  		n += 1 + l + sovProposal(uint64(l))
  3744  	}
  3745  	l = len(m.Description)
  3746  	if l > 0 {
  3747  		n += 1 + l + sovProposal(uint64(l))
  3748  	}
  3749  	l = len(m.MarketId)
  3750  	if l > 0 {
  3751  		n += 1 + l + sovProposal(uint64(l))
  3752  	}
  3753  	if m.InitialMarginRatio != nil {
  3754  		l = m.InitialMarginRatio.Size()
  3755  		n += 1 + l + sovProposal(uint64(l))
  3756  	}
  3757  	if m.MaintenanceMarginRatio != nil {
  3758  		l = m.MaintenanceMarginRatio.Size()
  3759  		n += 1 + l + sovProposal(uint64(l))
  3760  	}
  3761  	if m.MakerFeeRate != nil {
  3762  		l = m.MakerFeeRate.Size()
  3763  		n += 1 + l + sovProposal(uint64(l))
  3764  	}
  3765  	if m.TakerFeeRate != nil {
  3766  		l = m.TakerFeeRate.Size()
  3767  		n += 1 + l + sovProposal(uint64(l))
  3768  	}
  3769  	if m.RelayerFeeShareRate != nil {
  3770  		l = m.RelayerFeeShareRate.Size()
  3771  		n += 1 + l + sovProposal(uint64(l))
  3772  	}
  3773  	if m.MinPriceTickSize != nil {
  3774  		l = m.MinPriceTickSize.Size()
  3775  		n += 1 + l + sovProposal(uint64(l))
  3776  	}
  3777  	if m.MinQuantityTickSize != nil {
  3778  		l = m.MinQuantityTickSize.Size()
  3779  		n += 1 + l + sovProposal(uint64(l))
  3780  	}
  3781  	if m.HourlyInterestRate != nil {
  3782  		l = m.HourlyInterestRate.Size()
  3783  		n += 1 + l + sovProposal(uint64(l))
  3784  	}
  3785  	if m.HourlyFundingRateCap != nil {
  3786  		l = m.HourlyFundingRateCap.Size()
  3787  		n += 1 + l + sovProposal(uint64(l))
  3788  	}
  3789  	if m.Status != 0 {
  3790  		n += 1 + sovProposal(uint64(m.Status))
  3791  	}
  3792  	if m.OracleParams != nil {
  3793  		l = m.OracleParams.Size()
  3794  		n += 1 + l + sovProposal(uint64(l))
  3795  	}
  3796  	l = len(m.Ticker)
  3797  	if l > 0 {
  3798  		n += 1 + l + sovProposal(uint64(l))
  3799  	}
  3800  	if m.MinNotional != nil {
  3801  		l = m.MinNotional.Size()
  3802  		n += 2 + l + sovProposal(uint64(l))
  3803  	}
  3804  	if m.AdminInfo != nil {
  3805  		l = m.AdminInfo.Size()
  3806  		n += 2 + l + sovProposal(uint64(l))
  3807  	}
  3808  	return n
  3809  }
  3810  
  3811  func (m *AdminInfo) Size() (n int) {
  3812  	if m == nil {
  3813  		return 0
  3814  	}
  3815  	var l int
  3816  	_ = l
  3817  	l = len(m.Admin)
  3818  	if l > 0 {
  3819  		n += 1 + l + sovProposal(uint64(l))
  3820  	}
  3821  	if m.AdminPermissions != 0 {
  3822  		n += 1 + sovProposal(uint64(m.AdminPermissions))
  3823  	}
  3824  	return n
  3825  }
  3826  
  3827  func (m *MarketForcedSettlementProposal) Size() (n int) {
  3828  	if m == nil {
  3829  		return 0
  3830  	}
  3831  	var l int
  3832  	_ = l
  3833  	l = len(m.Title)
  3834  	if l > 0 {
  3835  		n += 1 + l + sovProposal(uint64(l))
  3836  	}
  3837  	l = len(m.Description)
  3838  	if l > 0 {
  3839  		n += 1 + l + sovProposal(uint64(l))
  3840  	}
  3841  	l = len(m.MarketId)
  3842  	if l > 0 {
  3843  		n += 1 + l + sovProposal(uint64(l))
  3844  	}
  3845  	if m.SettlementPrice != nil {
  3846  		l = m.SettlementPrice.Size()
  3847  		n += 1 + l + sovProposal(uint64(l))
  3848  	}
  3849  	return n
  3850  }
  3851  
  3852  func (m *UpdateDenomDecimalsProposal) Size() (n int) {
  3853  	if m == nil {
  3854  		return 0
  3855  	}
  3856  	var l int
  3857  	_ = l
  3858  	l = len(m.Title)
  3859  	if l > 0 {
  3860  		n += 1 + l + sovProposal(uint64(l))
  3861  	}
  3862  	l = len(m.Description)
  3863  	if l > 0 {
  3864  		n += 1 + l + sovProposal(uint64(l))
  3865  	}
  3866  	if len(m.DenomDecimals) > 0 {
  3867  		for _, e := range m.DenomDecimals {
  3868  			l = e.Size()
  3869  			n += 1 + l + sovProposal(uint64(l))
  3870  		}
  3871  	}
  3872  	return n
  3873  }
  3874  
  3875  func (m *BinaryOptionsMarketParamUpdateProposal) Size() (n int) {
  3876  	if m == nil {
  3877  		return 0
  3878  	}
  3879  	var l int
  3880  	_ = l
  3881  	l = len(m.Title)
  3882  	if l > 0 {
  3883  		n += 1 + l + sovProposal(uint64(l))
  3884  	}
  3885  	l = len(m.Description)
  3886  	if l > 0 {
  3887  		n += 1 + l + sovProposal(uint64(l))
  3888  	}
  3889  	l = len(m.MarketId)
  3890  	if l > 0 {
  3891  		n += 1 + l + sovProposal(uint64(l))
  3892  	}
  3893  	if m.MakerFeeRate != nil {
  3894  		l = m.MakerFeeRate.Size()
  3895  		n += 1 + l + sovProposal(uint64(l))
  3896  	}
  3897  	if m.TakerFeeRate != nil {
  3898  		l = m.TakerFeeRate.Size()
  3899  		n += 1 + l + sovProposal(uint64(l))
  3900  	}
  3901  	if m.RelayerFeeShareRate != nil {
  3902  		l = m.RelayerFeeShareRate.Size()
  3903  		n += 1 + l + sovProposal(uint64(l))
  3904  	}
  3905  	if m.MinPriceTickSize != nil {
  3906  		l = m.MinPriceTickSize.Size()
  3907  		n += 1 + l + sovProposal(uint64(l))
  3908  	}
  3909  	if m.MinQuantityTickSize != nil {
  3910  		l = m.MinQuantityTickSize.Size()
  3911  		n += 1 + l + sovProposal(uint64(l))
  3912  	}
  3913  	if m.ExpirationTimestamp != 0 {
  3914  		n += 1 + sovProposal(uint64(m.ExpirationTimestamp))
  3915  	}
  3916  	if m.SettlementTimestamp != 0 {
  3917  		n += 1 + sovProposal(uint64(m.SettlementTimestamp))
  3918  	}
  3919  	if m.SettlementPrice != nil {
  3920  		l = m.SettlementPrice.Size()
  3921  		n += 1 + l + sovProposal(uint64(l))
  3922  	}
  3923  	l = len(m.Admin)
  3924  	if l > 0 {
  3925  		n += 1 + l + sovProposal(uint64(l))
  3926  	}
  3927  	if m.Status != 0 {
  3928  		n += 1 + sovProposal(uint64(m.Status))
  3929  	}
  3930  	if m.OracleParams != nil {
  3931  		l = m.OracleParams.Size()
  3932  		n += 1 + l + sovProposal(uint64(l))
  3933  	}
  3934  	l = len(m.Ticker)
  3935  	if l > 0 {
  3936  		n += 1 + l + sovProposal(uint64(l))
  3937  	}
  3938  	if m.MinNotional != nil {
  3939  		l = m.MinNotional.Size()
  3940  		n += 2 + l + sovProposal(uint64(l))
  3941  	}
  3942  	return n
  3943  }
  3944  
  3945  func (m *ProviderOracleParams) Size() (n int) {
  3946  	if m == nil {
  3947  		return 0
  3948  	}
  3949  	var l int
  3950  	_ = l
  3951  	l = len(m.Symbol)
  3952  	if l > 0 {
  3953  		n += 1 + l + sovProposal(uint64(l))
  3954  	}
  3955  	l = len(m.Provider)
  3956  	if l > 0 {
  3957  		n += 1 + l + sovProposal(uint64(l))
  3958  	}
  3959  	if m.OracleScaleFactor != 0 {
  3960  		n += 1 + sovProposal(uint64(m.OracleScaleFactor))
  3961  	}
  3962  	if m.OracleType != 0 {
  3963  		n += 1 + sovProposal(uint64(m.OracleType))
  3964  	}
  3965  	return n
  3966  }
  3967  
  3968  func (m *OracleParams) Size() (n int) {
  3969  	if m == nil {
  3970  		return 0
  3971  	}
  3972  	var l int
  3973  	_ = l
  3974  	l = len(m.OracleBase)
  3975  	if l > 0 {
  3976  		n += 1 + l + sovProposal(uint64(l))
  3977  	}
  3978  	l = len(m.OracleQuote)
  3979  	if l > 0 {
  3980  		n += 1 + l + sovProposal(uint64(l))
  3981  	}
  3982  	if m.OracleScaleFactor != 0 {
  3983  		n += 1 + sovProposal(uint64(m.OracleScaleFactor))
  3984  	}
  3985  	if m.OracleType != 0 {
  3986  		n += 1 + sovProposal(uint64(m.OracleType))
  3987  	}
  3988  	return n
  3989  }
  3990  
  3991  func (m *TradingRewardCampaignLaunchProposal) Size() (n int) {
  3992  	if m == nil {
  3993  		return 0
  3994  	}
  3995  	var l int
  3996  	_ = l
  3997  	l = len(m.Title)
  3998  	if l > 0 {
  3999  		n += 1 + l + sovProposal(uint64(l))
  4000  	}
  4001  	l = len(m.Description)
  4002  	if l > 0 {
  4003  		n += 1 + l + sovProposal(uint64(l))
  4004  	}
  4005  	if m.CampaignInfo != nil {
  4006  		l = m.CampaignInfo.Size()
  4007  		n += 1 + l + sovProposal(uint64(l))
  4008  	}
  4009  	if len(m.CampaignRewardPools) > 0 {
  4010  		for _, e := range m.CampaignRewardPools {
  4011  			l = e.Size()
  4012  			n += 1 + l + sovProposal(uint64(l))
  4013  		}
  4014  	}
  4015  	return n
  4016  }
  4017  
  4018  func (m *TradingRewardCampaignUpdateProposal) Size() (n int) {
  4019  	if m == nil {
  4020  		return 0
  4021  	}
  4022  	var l int
  4023  	_ = l
  4024  	l = len(m.Title)
  4025  	if l > 0 {
  4026  		n += 1 + l + sovProposal(uint64(l))
  4027  	}
  4028  	l = len(m.Description)
  4029  	if l > 0 {
  4030  		n += 1 + l + sovProposal(uint64(l))
  4031  	}
  4032  	if m.CampaignInfo != nil {
  4033  		l = m.CampaignInfo.Size()
  4034  		n += 1 + l + sovProposal(uint64(l))
  4035  	}
  4036  	if len(m.CampaignRewardPoolsAdditions) > 0 {
  4037  		for _, e := range m.CampaignRewardPoolsAdditions {
  4038  			l = e.Size()
  4039  			n += 1 + l + sovProposal(uint64(l))
  4040  		}
  4041  	}
  4042  	if len(m.CampaignRewardPoolsUpdates) > 0 {
  4043  		for _, e := range m.CampaignRewardPoolsUpdates {
  4044  			l = e.Size()
  4045  			n += 1 + l + sovProposal(uint64(l))
  4046  		}
  4047  	}
  4048  	return n
  4049  }
  4050  
  4051  func (m *RewardPointUpdate) Size() (n int) {
  4052  	if m == nil {
  4053  		return 0
  4054  	}
  4055  	var l int
  4056  	_ = l
  4057  	l = len(m.AccountAddress)
  4058  	if l > 0 {
  4059  		n += 1 + l + sovProposal(uint64(l))
  4060  	}
  4061  	l = m.NewPoints.Size()
  4062  	n += 1 + l + sovProposal(uint64(l))
  4063  	return n
  4064  }
  4065  
  4066  func (m *TradingRewardPendingPointsUpdateProposal) Size() (n int) {
  4067  	if m == nil {
  4068  		return 0
  4069  	}
  4070  	var l int
  4071  	_ = l
  4072  	l = len(m.Title)
  4073  	if l > 0 {
  4074  		n += 1 + l + sovProposal(uint64(l))
  4075  	}
  4076  	l = len(m.Description)
  4077  	if l > 0 {
  4078  		n += 1 + l + sovProposal(uint64(l))
  4079  	}
  4080  	if m.PendingPoolTimestamp != 0 {
  4081  		n += 1 + sovProposal(uint64(m.PendingPoolTimestamp))
  4082  	}
  4083  	if len(m.RewardPointUpdates) > 0 {
  4084  		for _, e := range m.RewardPointUpdates {
  4085  			l = e.Size()
  4086  			n += 1 + l + sovProposal(uint64(l))
  4087  		}
  4088  	}
  4089  	return n
  4090  }
  4091  
  4092  func (m *FeeDiscountProposal) Size() (n int) {
  4093  	if m == nil {
  4094  		return 0
  4095  	}
  4096  	var l int
  4097  	_ = l
  4098  	l = len(m.Title)
  4099  	if l > 0 {
  4100  		n += 1 + l + sovProposal(uint64(l))
  4101  	}
  4102  	l = len(m.Description)
  4103  	if l > 0 {
  4104  		n += 1 + l + sovProposal(uint64(l))
  4105  	}
  4106  	if m.Schedule != nil {
  4107  		l = m.Schedule.Size()
  4108  		n += 1 + l + sovProposal(uint64(l))
  4109  	}
  4110  	return n
  4111  }
  4112  
  4113  func (m *BatchCommunityPoolSpendProposal) Size() (n int) {
  4114  	if m == nil {
  4115  		return 0
  4116  	}
  4117  	var l int
  4118  	_ = l
  4119  	l = len(m.Title)
  4120  	if l > 0 {
  4121  		n += 1 + l + sovProposal(uint64(l))
  4122  	}
  4123  	l = len(m.Description)
  4124  	if l > 0 {
  4125  		n += 1 + l + sovProposal(uint64(l))
  4126  	}
  4127  	if len(m.Proposals) > 0 {
  4128  		for _, e := range m.Proposals {
  4129  			l = e.Size()
  4130  			n += 1 + l + sovProposal(uint64(l))
  4131  		}
  4132  	}
  4133  	return n
  4134  }
  4135  
  4136  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) Size() (n int) {
  4137  	if m == nil {
  4138  		return 0
  4139  	}
  4140  	var l int
  4141  	_ = l
  4142  	l = len(m.Title)
  4143  	if l > 0 {
  4144  		n += 1 + l + sovProposal(uint64(l))
  4145  	}
  4146  	l = len(m.Description)
  4147  	if l > 0 {
  4148  		n += 1 + l + sovProposal(uint64(l))
  4149  	}
  4150  	if len(m.MarketFeeMultipliers) > 0 {
  4151  		for _, e := range m.MarketFeeMultipliers {
  4152  			l = e.Size()
  4153  			n += 1 + l + sovProposal(uint64(l))
  4154  		}
  4155  	}
  4156  	return n
  4157  }
  4158  
  4159  func sovProposal(x uint64) (n int) {
  4160  	return (math_bits.Len64(x|1) + 6) / 7
  4161  }
  4162  func sozProposal(x uint64) (n int) {
  4163  	return sovProposal(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  4164  }
  4165  func (m *SpotMarketParamUpdateProposal) Unmarshal(dAtA []byte) error {
  4166  	l := len(dAtA)
  4167  	iNdEx := 0
  4168  	for iNdEx < l {
  4169  		preIndex := iNdEx
  4170  		var wire uint64
  4171  		for shift := uint(0); ; shift += 7 {
  4172  			if shift >= 64 {
  4173  				return ErrIntOverflowProposal
  4174  			}
  4175  			if iNdEx >= l {
  4176  				return io.ErrUnexpectedEOF
  4177  			}
  4178  			b := dAtA[iNdEx]
  4179  			iNdEx++
  4180  			wire |= uint64(b&0x7F) << shift
  4181  			if b < 0x80 {
  4182  				break
  4183  			}
  4184  		}
  4185  		fieldNum := int32(wire >> 3)
  4186  		wireType := int(wire & 0x7)
  4187  		if wireType == 4 {
  4188  			return fmt.Errorf("proto: SpotMarketParamUpdateProposal: wiretype end group for non-group")
  4189  		}
  4190  		if fieldNum <= 0 {
  4191  			return fmt.Errorf("proto: SpotMarketParamUpdateProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  4192  		}
  4193  		switch fieldNum {
  4194  		case 1:
  4195  			if wireType != 2 {
  4196  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  4197  			}
  4198  			var stringLen uint64
  4199  			for shift := uint(0); ; shift += 7 {
  4200  				if shift >= 64 {
  4201  					return ErrIntOverflowProposal
  4202  				}
  4203  				if iNdEx >= l {
  4204  					return io.ErrUnexpectedEOF
  4205  				}
  4206  				b := dAtA[iNdEx]
  4207  				iNdEx++
  4208  				stringLen |= uint64(b&0x7F) << shift
  4209  				if b < 0x80 {
  4210  					break
  4211  				}
  4212  			}
  4213  			intStringLen := int(stringLen)
  4214  			if intStringLen < 0 {
  4215  				return ErrInvalidLengthProposal
  4216  			}
  4217  			postIndex := iNdEx + intStringLen
  4218  			if postIndex < 0 {
  4219  				return ErrInvalidLengthProposal
  4220  			}
  4221  			if postIndex > l {
  4222  				return io.ErrUnexpectedEOF
  4223  			}
  4224  			m.Title = string(dAtA[iNdEx:postIndex])
  4225  			iNdEx = postIndex
  4226  		case 2:
  4227  			if wireType != 2 {
  4228  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  4229  			}
  4230  			var stringLen uint64
  4231  			for shift := uint(0); ; shift += 7 {
  4232  				if shift >= 64 {
  4233  					return ErrIntOverflowProposal
  4234  				}
  4235  				if iNdEx >= l {
  4236  					return io.ErrUnexpectedEOF
  4237  				}
  4238  				b := dAtA[iNdEx]
  4239  				iNdEx++
  4240  				stringLen |= uint64(b&0x7F) << shift
  4241  				if b < 0x80 {
  4242  					break
  4243  				}
  4244  			}
  4245  			intStringLen := int(stringLen)
  4246  			if intStringLen < 0 {
  4247  				return ErrInvalidLengthProposal
  4248  			}
  4249  			postIndex := iNdEx + intStringLen
  4250  			if postIndex < 0 {
  4251  				return ErrInvalidLengthProposal
  4252  			}
  4253  			if postIndex > l {
  4254  				return io.ErrUnexpectedEOF
  4255  			}
  4256  			m.Description = string(dAtA[iNdEx:postIndex])
  4257  			iNdEx = postIndex
  4258  		case 3:
  4259  			if wireType != 2 {
  4260  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  4261  			}
  4262  			var stringLen uint64
  4263  			for shift := uint(0); ; shift += 7 {
  4264  				if shift >= 64 {
  4265  					return ErrIntOverflowProposal
  4266  				}
  4267  				if iNdEx >= l {
  4268  					return io.ErrUnexpectedEOF
  4269  				}
  4270  				b := dAtA[iNdEx]
  4271  				iNdEx++
  4272  				stringLen |= uint64(b&0x7F) << shift
  4273  				if b < 0x80 {
  4274  					break
  4275  				}
  4276  			}
  4277  			intStringLen := int(stringLen)
  4278  			if intStringLen < 0 {
  4279  				return ErrInvalidLengthProposal
  4280  			}
  4281  			postIndex := iNdEx + intStringLen
  4282  			if postIndex < 0 {
  4283  				return ErrInvalidLengthProposal
  4284  			}
  4285  			if postIndex > l {
  4286  				return io.ErrUnexpectedEOF
  4287  			}
  4288  			m.MarketId = string(dAtA[iNdEx:postIndex])
  4289  			iNdEx = postIndex
  4290  		case 4:
  4291  			if wireType != 2 {
  4292  				return fmt.Errorf("proto: wrong wireType = %d for field MakerFeeRate", wireType)
  4293  			}
  4294  			var stringLen uint64
  4295  			for shift := uint(0); ; shift += 7 {
  4296  				if shift >= 64 {
  4297  					return ErrIntOverflowProposal
  4298  				}
  4299  				if iNdEx >= l {
  4300  					return io.ErrUnexpectedEOF
  4301  				}
  4302  				b := dAtA[iNdEx]
  4303  				iNdEx++
  4304  				stringLen |= uint64(b&0x7F) << shift
  4305  				if b < 0x80 {
  4306  					break
  4307  				}
  4308  			}
  4309  			intStringLen := int(stringLen)
  4310  			if intStringLen < 0 {
  4311  				return ErrInvalidLengthProposal
  4312  			}
  4313  			postIndex := iNdEx + intStringLen
  4314  			if postIndex < 0 {
  4315  				return ErrInvalidLengthProposal
  4316  			}
  4317  			if postIndex > l {
  4318  				return io.ErrUnexpectedEOF
  4319  			}
  4320  			var v cosmossdk_io_math.LegacyDec
  4321  			m.MakerFeeRate = &v
  4322  			if err := m.MakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4323  				return err
  4324  			}
  4325  			iNdEx = postIndex
  4326  		case 5:
  4327  			if wireType != 2 {
  4328  				return fmt.Errorf("proto: wrong wireType = %d for field TakerFeeRate", wireType)
  4329  			}
  4330  			var stringLen uint64
  4331  			for shift := uint(0); ; shift += 7 {
  4332  				if shift >= 64 {
  4333  					return ErrIntOverflowProposal
  4334  				}
  4335  				if iNdEx >= l {
  4336  					return io.ErrUnexpectedEOF
  4337  				}
  4338  				b := dAtA[iNdEx]
  4339  				iNdEx++
  4340  				stringLen |= uint64(b&0x7F) << shift
  4341  				if b < 0x80 {
  4342  					break
  4343  				}
  4344  			}
  4345  			intStringLen := int(stringLen)
  4346  			if intStringLen < 0 {
  4347  				return ErrInvalidLengthProposal
  4348  			}
  4349  			postIndex := iNdEx + intStringLen
  4350  			if postIndex < 0 {
  4351  				return ErrInvalidLengthProposal
  4352  			}
  4353  			if postIndex > l {
  4354  				return io.ErrUnexpectedEOF
  4355  			}
  4356  			var v cosmossdk_io_math.LegacyDec
  4357  			m.TakerFeeRate = &v
  4358  			if err := m.TakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4359  				return err
  4360  			}
  4361  			iNdEx = postIndex
  4362  		case 6:
  4363  			if wireType != 2 {
  4364  				return fmt.Errorf("proto: wrong wireType = %d for field RelayerFeeShareRate", wireType)
  4365  			}
  4366  			var stringLen uint64
  4367  			for shift := uint(0); ; shift += 7 {
  4368  				if shift >= 64 {
  4369  					return ErrIntOverflowProposal
  4370  				}
  4371  				if iNdEx >= l {
  4372  					return io.ErrUnexpectedEOF
  4373  				}
  4374  				b := dAtA[iNdEx]
  4375  				iNdEx++
  4376  				stringLen |= uint64(b&0x7F) << shift
  4377  				if b < 0x80 {
  4378  					break
  4379  				}
  4380  			}
  4381  			intStringLen := int(stringLen)
  4382  			if intStringLen < 0 {
  4383  				return ErrInvalidLengthProposal
  4384  			}
  4385  			postIndex := iNdEx + intStringLen
  4386  			if postIndex < 0 {
  4387  				return ErrInvalidLengthProposal
  4388  			}
  4389  			if postIndex > l {
  4390  				return io.ErrUnexpectedEOF
  4391  			}
  4392  			var v cosmossdk_io_math.LegacyDec
  4393  			m.RelayerFeeShareRate = &v
  4394  			if err := m.RelayerFeeShareRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4395  				return err
  4396  			}
  4397  			iNdEx = postIndex
  4398  		case 7:
  4399  			if wireType != 2 {
  4400  				return fmt.Errorf("proto: wrong wireType = %d for field MinPriceTickSize", wireType)
  4401  			}
  4402  			var stringLen uint64
  4403  			for shift := uint(0); ; shift += 7 {
  4404  				if shift >= 64 {
  4405  					return ErrIntOverflowProposal
  4406  				}
  4407  				if iNdEx >= l {
  4408  					return io.ErrUnexpectedEOF
  4409  				}
  4410  				b := dAtA[iNdEx]
  4411  				iNdEx++
  4412  				stringLen |= uint64(b&0x7F) << shift
  4413  				if b < 0x80 {
  4414  					break
  4415  				}
  4416  			}
  4417  			intStringLen := int(stringLen)
  4418  			if intStringLen < 0 {
  4419  				return ErrInvalidLengthProposal
  4420  			}
  4421  			postIndex := iNdEx + intStringLen
  4422  			if postIndex < 0 {
  4423  				return ErrInvalidLengthProposal
  4424  			}
  4425  			if postIndex > l {
  4426  				return io.ErrUnexpectedEOF
  4427  			}
  4428  			var v cosmossdk_io_math.LegacyDec
  4429  			m.MinPriceTickSize = &v
  4430  			if err := m.MinPriceTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4431  				return err
  4432  			}
  4433  			iNdEx = postIndex
  4434  		case 8:
  4435  			if wireType != 2 {
  4436  				return fmt.Errorf("proto: wrong wireType = %d for field MinQuantityTickSize", wireType)
  4437  			}
  4438  			var stringLen uint64
  4439  			for shift := uint(0); ; shift += 7 {
  4440  				if shift >= 64 {
  4441  					return ErrIntOverflowProposal
  4442  				}
  4443  				if iNdEx >= l {
  4444  					return io.ErrUnexpectedEOF
  4445  				}
  4446  				b := dAtA[iNdEx]
  4447  				iNdEx++
  4448  				stringLen |= uint64(b&0x7F) << shift
  4449  				if b < 0x80 {
  4450  					break
  4451  				}
  4452  			}
  4453  			intStringLen := int(stringLen)
  4454  			if intStringLen < 0 {
  4455  				return ErrInvalidLengthProposal
  4456  			}
  4457  			postIndex := iNdEx + intStringLen
  4458  			if postIndex < 0 {
  4459  				return ErrInvalidLengthProposal
  4460  			}
  4461  			if postIndex > l {
  4462  				return io.ErrUnexpectedEOF
  4463  			}
  4464  			var v cosmossdk_io_math.LegacyDec
  4465  			m.MinQuantityTickSize = &v
  4466  			if err := m.MinQuantityTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4467  				return err
  4468  			}
  4469  			iNdEx = postIndex
  4470  		case 9:
  4471  			if wireType != 0 {
  4472  				return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  4473  			}
  4474  			m.Status = 0
  4475  			for shift := uint(0); ; shift += 7 {
  4476  				if shift >= 64 {
  4477  					return ErrIntOverflowProposal
  4478  				}
  4479  				if iNdEx >= l {
  4480  					return io.ErrUnexpectedEOF
  4481  				}
  4482  				b := dAtA[iNdEx]
  4483  				iNdEx++
  4484  				m.Status |= MarketStatus(b&0x7F) << shift
  4485  				if b < 0x80 {
  4486  					break
  4487  				}
  4488  			}
  4489  		case 10:
  4490  			if wireType != 2 {
  4491  				return fmt.Errorf("proto: wrong wireType = %d for field Ticker", wireType)
  4492  			}
  4493  			var stringLen uint64
  4494  			for shift := uint(0); ; shift += 7 {
  4495  				if shift >= 64 {
  4496  					return ErrIntOverflowProposal
  4497  				}
  4498  				if iNdEx >= l {
  4499  					return io.ErrUnexpectedEOF
  4500  				}
  4501  				b := dAtA[iNdEx]
  4502  				iNdEx++
  4503  				stringLen |= uint64(b&0x7F) << shift
  4504  				if b < 0x80 {
  4505  					break
  4506  				}
  4507  			}
  4508  			intStringLen := int(stringLen)
  4509  			if intStringLen < 0 {
  4510  				return ErrInvalidLengthProposal
  4511  			}
  4512  			postIndex := iNdEx + intStringLen
  4513  			if postIndex < 0 {
  4514  				return ErrInvalidLengthProposal
  4515  			}
  4516  			if postIndex > l {
  4517  				return io.ErrUnexpectedEOF
  4518  			}
  4519  			m.Ticker = string(dAtA[iNdEx:postIndex])
  4520  			iNdEx = postIndex
  4521  		case 11:
  4522  			if wireType != 2 {
  4523  				return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType)
  4524  			}
  4525  			var stringLen uint64
  4526  			for shift := uint(0); ; shift += 7 {
  4527  				if shift >= 64 {
  4528  					return ErrIntOverflowProposal
  4529  				}
  4530  				if iNdEx >= l {
  4531  					return io.ErrUnexpectedEOF
  4532  				}
  4533  				b := dAtA[iNdEx]
  4534  				iNdEx++
  4535  				stringLen |= uint64(b&0x7F) << shift
  4536  				if b < 0x80 {
  4537  					break
  4538  				}
  4539  			}
  4540  			intStringLen := int(stringLen)
  4541  			if intStringLen < 0 {
  4542  				return ErrInvalidLengthProposal
  4543  			}
  4544  			postIndex := iNdEx + intStringLen
  4545  			if postIndex < 0 {
  4546  				return ErrInvalidLengthProposal
  4547  			}
  4548  			if postIndex > l {
  4549  				return io.ErrUnexpectedEOF
  4550  			}
  4551  			var v cosmossdk_io_math.LegacyDec
  4552  			m.MinNotional = &v
  4553  			if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4554  				return err
  4555  			}
  4556  			iNdEx = postIndex
  4557  		case 12:
  4558  			if wireType != 2 {
  4559  				return fmt.Errorf("proto: wrong wireType = %d for field AdminInfo", wireType)
  4560  			}
  4561  			var msglen int
  4562  			for shift := uint(0); ; shift += 7 {
  4563  				if shift >= 64 {
  4564  					return ErrIntOverflowProposal
  4565  				}
  4566  				if iNdEx >= l {
  4567  					return io.ErrUnexpectedEOF
  4568  				}
  4569  				b := dAtA[iNdEx]
  4570  				iNdEx++
  4571  				msglen |= int(b&0x7F) << shift
  4572  				if b < 0x80 {
  4573  					break
  4574  				}
  4575  			}
  4576  			if msglen < 0 {
  4577  				return ErrInvalidLengthProposal
  4578  			}
  4579  			postIndex := iNdEx + msglen
  4580  			if postIndex < 0 {
  4581  				return ErrInvalidLengthProposal
  4582  			}
  4583  			if postIndex > l {
  4584  				return io.ErrUnexpectedEOF
  4585  			}
  4586  			if m.AdminInfo == nil {
  4587  				m.AdminInfo = &AdminInfo{}
  4588  			}
  4589  			if err := m.AdminInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4590  				return err
  4591  			}
  4592  			iNdEx = postIndex
  4593  		default:
  4594  			iNdEx = preIndex
  4595  			skippy, err := skipProposal(dAtA[iNdEx:])
  4596  			if err != nil {
  4597  				return err
  4598  			}
  4599  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4600  				return ErrInvalidLengthProposal
  4601  			}
  4602  			if (iNdEx + skippy) > l {
  4603  				return io.ErrUnexpectedEOF
  4604  			}
  4605  			iNdEx += skippy
  4606  		}
  4607  	}
  4608  
  4609  	if iNdEx > l {
  4610  		return io.ErrUnexpectedEOF
  4611  	}
  4612  	return nil
  4613  }
  4614  func (m *ExchangeEnableProposal) Unmarshal(dAtA []byte) error {
  4615  	l := len(dAtA)
  4616  	iNdEx := 0
  4617  	for iNdEx < l {
  4618  		preIndex := iNdEx
  4619  		var wire uint64
  4620  		for shift := uint(0); ; shift += 7 {
  4621  			if shift >= 64 {
  4622  				return ErrIntOverflowProposal
  4623  			}
  4624  			if iNdEx >= l {
  4625  				return io.ErrUnexpectedEOF
  4626  			}
  4627  			b := dAtA[iNdEx]
  4628  			iNdEx++
  4629  			wire |= uint64(b&0x7F) << shift
  4630  			if b < 0x80 {
  4631  				break
  4632  			}
  4633  		}
  4634  		fieldNum := int32(wire >> 3)
  4635  		wireType := int(wire & 0x7)
  4636  		if wireType == 4 {
  4637  			return fmt.Errorf("proto: ExchangeEnableProposal: wiretype end group for non-group")
  4638  		}
  4639  		if fieldNum <= 0 {
  4640  			return fmt.Errorf("proto: ExchangeEnableProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  4641  		}
  4642  		switch fieldNum {
  4643  		case 1:
  4644  			if wireType != 2 {
  4645  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  4646  			}
  4647  			var stringLen uint64
  4648  			for shift := uint(0); ; shift += 7 {
  4649  				if shift >= 64 {
  4650  					return ErrIntOverflowProposal
  4651  				}
  4652  				if iNdEx >= l {
  4653  					return io.ErrUnexpectedEOF
  4654  				}
  4655  				b := dAtA[iNdEx]
  4656  				iNdEx++
  4657  				stringLen |= uint64(b&0x7F) << shift
  4658  				if b < 0x80 {
  4659  					break
  4660  				}
  4661  			}
  4662  			intStringLen := int(stringLen)
  4663  			if intStringLen < 0 {
  4664  				return ErrInvalidLengthProposal
  4665  			}
  4666  			postIndex := iNdEx + intStringLen
  4667  			if postIndex < 0 {
  4668  				return ErrInvalidLengthProposal
  4669  			}
  4670  			if postIndex > l {
  4671  				return io.ErrUnexpectedEOF
  4672  			}
  4673  			m.Title = string(dAtA[iNdEx:postIndex])
  4674  			iNdEx = postIndex
  4675  		case 2:
  4676  			if wireType != 2 {
  4677  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  4678  			}
  4679  			var stringLen uint64
  4680  			for shift := uint(0); ; shift += 7 {
  4681  				if shift >= 64 {
  4682  					return ErrIntOverflowProposal
  4683  				}
  4684  				if iNdEx >= l {
  4685  					return io.ErrUnexpectedEOF
  4686  				}
  4687  				b := dAtA[iNdEx]
  4688  				iNdEx++
  4689  				stringLen |= uint64(b&0x7F) << shift
  4690  				if b < 0x80 {
  4691  					break
  4692  				}
  4693  			}
  4694  			intStringLen := int(stringLen)
  4695  			if intStringLen < 0 {
  4696  				return ErrInvalidLengthProposal
  4697  			}
  4698  			postIndex := iNdEx + intStringLen
  4699  			if postIndex < 0 {
  4700  				return ErrInvalidLengthProposal
  4701  			}
  4702  			if postIndex > l {
  4703  				return io.ErrUnexpectedEOF
  4704  			}
  4705  			m.Description = string(dAtA[iNdEx:postIndex])
  4706  			iNdEx = postIndex
  4707  		case 3:
  4708  			if wireType != 0 {
  4709  				return fmt.Errorf("proto: wrong wireType = %d for field ExchangeType", wireType)
  4710  			}
  4711  			m.ExchangeType = 0
  4712  			for shift := uint(0); ; shift += 7 {
  4713  				if shift >= 64 {
  4714  					return ErrIntOverflowProposal
  4715  				}
  4716  				if iNdEx >= l {
  4717  					return io.ErrUnexpectedEOF
  4718  				}
  4719  				b := dAtA[iNdEx]
  4720  				iNdEx++
  4721  				m.ExchangeType |= ExchangeType(b&0x7F) << shift
  4722  				if b < 0x80 {
  4723  					break
  4724  				}
  4725  			}
  4726  		default:
  4727  			iNdEx = preIndex
  4728  			skippy, err := skipProposal(dAtA[iNdEx:])
  4729  			if err != nil {
  4730  				return err
  4731  			}
  4732  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4733  				return ErrInvalidLengthProposal
  4734  			}
  4735  			if (iNdEx + skippy) > l {
  4736  				return io.ErrUnexpectedEOF
  4737  			}
  4738  			iNdEx += skippy
  4739  		}
  4740  	}
  4741  
  4742  	if iNdEx > l {
  4743  		return io.ErrUnexpectedEOF
  4744  	}
  4745  	return nil
  4746  }
  4747  func (m *BatchExchangeModificationProposal) Unmarshal(dAtA []byte) error {
  4748  	l := len(dAtA)
  4749  	iNdEx := 0
  4750  	for iNdEx < l {
  4751  		preIndex := iNdEx
  4752  		var wire uint64
  4753  		for shift := uint(0); ; shift += 7 {
  4754  			if shift >= 64 {
  4755  				return ErrIntOverflowProposal
  4756  			}
  4757  			if iNdEx >= l {
  4758  				return io.ErrUnexpectedEOF
  4759  			}
  4760  			b := dAtA[iNdEx]
  4761  			iNdEx++
  4762  			wire |= uint64(b&0x7F) << shift
  4763  			if b < 0x80 {
  4764  				break
  4765  			}
  4766  		}
  4767  		fieldNum := int32(wire >> 3)
  4768  		wireType := int(wire & 0x7)
  4769  		if wireType == 4 {
  4770  			return fmt.Errorf("proto: BatchExchangeModificationProposal: wiretype end group for non-group")
  4771  		}
  4772  		if fieldNum <= 0 {
  4773  			return fmt.Errorf("proto: BatchExchangeModificationProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  4774  		}
  4775  		switch fieldNum {
  4776  		case 1:
  4777  			if wireType != 2 {
  4778  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  4779  			}
  4780  			var stringLen uint64
  4781  			for shift := uint(0); ; shift += 7 {
  4782  				if shift >= 64 {
  4783  					return ErrIntOverflowProposal
  4784  				}
  4785  				if iNdEx >= l {
  4786  					return io.ErrUnexpectedEOF
  4787  				}
  4788  				b := dAtA[iNdEx]
  4789  				iNdEx++
  4790  				stringLen |= uint64(b&0x7F) << shift
  4791  				if b < 0x80 {
  4792  					break
  4793  				}
  4794  			}
  4795  			intStringLen := int(stringLen)
  4796  			if intStringLen < 0 {
  4797  				return ErrInvalidLengthProposal
  4798  			}
  4799  			postIndex := iNdEx + intStringLen
  4800  			if postIndex < 0 {
  4801  				return ErrInvalidLengthProposal
  4802  			}
  4803  			if postIndex > l {
  4804  				return io.ErrUnexpectedEOF
  4805  			}
  4806  			m.Title = string(dAtA[iNdEx:postIndex])
  4807  			iNdEx = postIndex
  4808  		case 2:
  4809  			if wireType != 2 {
  4810  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  4811  			}
  4812  			var stringLen uint64
  4813  			for shift := uint(0); ; shift += 7 {
  4814  				if shift >= 64 {
  4815  					return ErrIntOverflowProposal
  4816  				}
  4817  				if iNdEx >= l {
  4818  					return io.ErrUnexpectedEOF
  4819  				}
  4820  				b := dAtA[iNdEx]
  4821  				iNdEx++
  4822  				stringLen |= uint64(b&0x7F) << shift
  4823  				if b < 0x80 {
  4824  					break
  4825  				}
  4826  			}
  4827  			intStringLen := int(stringLen)
  4828  			if intStringLen < 0 {
  4829  				return ErrInvalidLengthProposal
  4830  			}
  4831  			postIndex := iNdEx + intStringLen
  4832  			if postIndex < 0 {
  4833  				return ErrInvalidLengthProposal
  4834  			}
  4835  			if postIndex > l {
  4836  				return io.ErrUnexpectedEOF
  4837  			}
  4838  			m.Description = string(dAtA[iNdEx:postIndex])
  4839  			iNdEx = postIndex
  4840  		case 3:
  4841  			if wireType != 2 {
  4842  				return fmt.Errorf("proto: wrong wireType = %d for field SpotMarketParamUpdateProposals", wireType)
  4843  			}
  4844  			var msglen int
  4845  			for shift := uint(0); ; shift += 7 {
  4846  				if shift >= 64 {
  4847  					return ErrIntOverflowProposal
  4848  				}
  4849  				if iNdEx >= l {
  4850  					return io.ErrUnexpectedEOF
  4851  				}
  4852  				b := dAtA[iNdEx]
  4853  				iNdEx++
  4854  				msglen |= int(b&0x7F) << shift
  4855  				if b < 0x80 {
  4856  					break
  4857  				}
  4858  			}
  4859  			if msglen < 0 {
  4860  				return ErrInvalidLengthProposal
  4861  			}
  4862  			postIndex := iNdEx + msglen
  4863  			if postIndex < 0 {
  4864  				return ErrInvalidLengthProposal
  4865  			}
  4866  			if postIndex > l {
  4867  				return io.ErrUnexpectedEOF
  4868  			}
  4869  			m.SpotMarketParamUpdateProposals = append(m.SpotMarketParamUpdateProposals, &SpotMarketParamUpdateProposal{})
  4870  			if err := m.SpotMarketParamUpdateProposals[len(m.SpotMarketParamUpdateProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4871  				return err
  4872  			}
  4873  			iNdEx = postIndex
  4874  		case 4:
  4875  			if wireType != 2 {
  4876  				return fmt.Errorf("proto: wrong wireType = %d for field DerivativeMarketParamUpdateProposals", wireType)
  4877  			}
  4878  			var msglen int
  4879  			for shift := uint(0); ; shift += 7 {
  4880  				if shift >= 64 {
  4881  					return ErrIntOverflowProposal
  4882  				}
  4883  				if iNdEx >= l {
  4884  					return io.ErrUnexpectedEOF
  4885  				}
  4886  				b := dAtA[iNdEx]
  4887  				iNdEx++
  4888  				msglen |= int(b&0x7F) << shift
  4889  				if b < 0x80 {
  4890  					break
  4891  				}
  4892  			}
  4893  			if msglen < 0 {
  4894  				return ErrInvalidLengthProposal
  4895  			}
  4896  			postIndex := iNdEx + msglen
  4897  			if postIndex < 0 {
  4898  				return ErrInvalidLengthProposal
  4899  			}
  4900  			if postIndex > l {
  4901  				return io.ErrUnexpectedEOF
  4902  			}
  4903  			m.DerivativeMarketParamUpdateProposals = append(m.DerivativeMarketParamUpdateProposals, &DerivativeMarketParamUpdateProposal{})
  4904  			if err := m.DerivativeMarketParamUpdateProposals[len(m.DerivativeMarketParamUpdateProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4905  				return err
  4906  			}
  4907  			iNdEx = postIndex
  4908  		case 5:
  4909  			if wireType != 2 {
  4910  				return fmt.Errorf("proto: wrong wireType = %d for field SpotMarketLaunchProposals", wireType)
  4911  			}
  4912  			var msglen int
  4913  			for shift := uint(0); ; shift += 7 {
  4914  				if shift >= 64 {
  4915  					return ErrIntOverflowProposal
  4916  				}
  4917  				if iNdEx >= l {
  4918  					return io.ErrUnexpectedEOF
  4919  				}
  4920  				b := dAtA[iNdEx]
  4921  				iNdEx++
  4922  				msglen |= int(b&0x7F) << shift
  4923  				if b < 0x80 {
  4924  					break
  4925  				}
  4926  			}
  4927  			if msglen < 0 {
  4928  				return ErrInvalidLengthProposal
  4929  			}
  4930  			postIndex := iNdEx + msglen
  4931  			if postIndex < 0 {
  4932  				return ErrInvalidLengthProposal
  4933  			}
  4934  			if postIndex > l {
  4935  				return io.ErrUnexpectedEOF
  4936  			}
  4937  			m.SpotMarketLaunchProposals = append(m.SpotMarketLaunchProposals, &SpotMarketLaunchProposal{})
  4938  			if err := m.SpotMarketLaunchProposals[len(m.SpotMarketLaunchProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4939  				return err
  4940  			}
  4941  			iNdEx = postIndex
  4942  		case 6:
  4943  			if wireType != 2 {
  4944  				return fmt.Errorf("proto: wrong wireType = %d for field PerpetualMarketLaunchProposals", wireType)
  4945  			}
  4946  			var msglen int
  4947  			for shift := uint(0); ; shift += 7 {
  4948  				if shift >= 64 {
  4949  					return ErrIntOverflowProposal
  4950  				}
  4951  				if iNdEx >= l {
  4952  					return io.ErrUnexpectedEOF
  4953  				}
  4954  				b := dAtA[iNdEx]
  4955  				iNdEx++
  4956  				msglen |= int(b&0x7F) << shift
  4957  				if b < 0x80 {
  4958  					break
  4959  				}
  4960  			}
  4961  			if msglen < 0 {
  4962  				return ErrInvalidLengthProposal
  4963  			}
  4964  			postIndex := iNdEx + msglen
  4965  			if postIndex < 0 {
  4966  				return ErrInvalidLengthProposal
  4967  			}
  4968  			if postIndex > l {
  4969  				return io.ErrUnexpectedEOF
  4970  			}
  4971  			m.PerpetualMarketLaunchProposals = append(m.PerpetualMarketLaunchProposals, &PerpetualMarketLaunchProposal{})
  4972  			if err := m.PerpetualMarketLaunchProposals[len(m.PerpetualMarketLaunchProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4973  				return err
  4974  			}
  4975  			iNdEx = postIndex
  4976  		case 7:
  4977  			if wireType != 2 {
  4978  				return fmt.Errorf("proto: wrong wireType = %d for field ExpiryFuturesMarketLaunchProposals", wireType)
  4979  			}
  4980  			var msglen int
  4981  			for shift := uint(0); ; shift += 7 {
  4982  				if shift >= 64 {
  4983  					return ErrIntOverflowProposal
  4984  				}
  4985  				if iNdEx >= l {
  4986  					return io.ErrUnexpectedEOF
  4987  				}
  4988  				b := dAtA[iNdEx]
  4989  				iNdEx++
  4990  				msglen |= int(b&0x7F) << shift
  4991  				if b < 0x80 {
  4992  					break
  4993  				}
  4994  			}
  4995  			if msglen < 0 {
  4996  				return ErrInvalidLengthProposal
  4997  			}
  4998  			postIndex := iNdEx + msglen
  4999  			if postIndex < 0 {
  5000  				return ErrInvalidLengthProposal
  5001  			}
  5002  			if postIndex > l {
  5003  				return io.ErrUnexpectedEOF
  5004  			}
  5005  			m.ExpiryFuturesMarketLaunchProposals = append(m.ExpiryFuturesMarketLaunchProposals, &ExpiryFuturesMarketLaunchProposal{})
  5006  			if err := m.ExpiryFuturesMarketLaunchProposals[len(m.ExpiryFuturesMarketLaunchProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5007  				return err
  5008  			}
  5009  			iNdEx = postIndex
  5010  		case 8:
  5011  			if wireType != 2 {
  5012  				return fmt.Errorf("proto: wrong wireType = %d for field TradingRewardCampaignUpdateProposal", wireType)
  5013  			}
  5014  			var msglen int
  5015  			for shift := uint(0); ; shift += 7 {
  5016  				if shift >= 64 {
  5017  					return ErrIntOverflowProposal
  5018  				}
  5019  				if iNdEx >= l {
  5020  					return io.ErrUnexpectedEOF
  5021  				}
  5022  				b := dAtA[iNdEx]
  5023  				iNdEx++
  5024  				msglen |= int(b&0x7F) << shift
  5025  				if b < 0x80 {
  5026  					break
  5027  				}
  5028  			}
  5029  			if msglen < 0 {
  5030  				return ErrInvalidLengthProposal
  5031  			}
  5032  			postIndex := iNdEx + msglen
  5033  			if postIndex < 0 {
  5034  				return ErrInvalidLengthProposal
  5035  			}
  5036  			if postIndex > l {
  5037  				return io.ErrUnexpectedEOF
  5038  			}
  5039  			if m.TradingRewardCampaignUpdateProposal == nil {
  5040  				m.TradingRewardCampaignUpdateProposal = &TradingRewardCampaignUpdateProposal{}
  5041  			}
  5042  			if err := m.TradingRewardCampaignUpdateProposal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5043  				return err
  5044  			}
  5045  			iNdEx = postIndex
  5046  		case 9:
  5047  			if wireType != 2 {
  5048  				return fmt.Errorf("proto: wrong wireType = %d for field BinaryOptionsMarketLaunchProposals", wireType)
  5049  			}
  5050  			var msglen int
  5051  			for shift := uint(0); ; shift += 7 {
  5052  				if shift >= 64 {
  5053  					return ErrIntOverflowProposal
  5054  				}
  5055  				if iNdEx >= l {
  5056  					return io.ErrUnexpectedEOF
  5057  				}
  5058  				b := dAtA[iNdEx]
  5059  				iNdEx++
  5060  				msglen |= int(b&0x7F) << shift
  5061  				if b < 0x80 {
  5062  					break
  5063  				}
  5064  			}
  5065  			if msglen < 0 {
  5066  				return ErrInvalidLengthProposal
  5067  			}
  5068  			postIndex := iNdEx + msglen
  5069  			if postIndex < 0 {
  5070  				return ErrInvalidLengthProposal
  5071  			}
  5072  			if postIndex > l {
  5073  				return io.ErrUnexpectedEOF
  5074  			}
  5075  			m.BinaryOptionsMarketLaunchProposals = append(m.BinaryOptionsMarketLaunchProposals, &BinaryOptionsMarketLaunchProposal{})
  5076  			if err := m.BinaryOptionsMarketLaunchProposals[len(m.BinaryOptionsMarketLaunchProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5077  				return err
  5078  			}
  5079  			iNdEx = postIndex
  5080  		case 10:
  5081  			if wireType != 2 {
  5082  				return fmt.Errorf("proto: wrong wireType = %d for field BinaryOptionsParamUpdateProposals", wireType)
  5083  			}
  5084  			var msglen int
  5085  			for shift := uint(0); ; shift += 7 {
  5086  				if shift >= 64 {
  5087  					return ErrIntOverflowProposal
  5088  				}
  5089  				if iNdEx >= l {
  5090  					return io.ErrUnexpectedEOF
  5091  				}
  5092  				b := dAtA[iNdEx]
  5093  				iNdEx++
  5094  				msglen |= int(b&0x7F) << shift
  5095  				if b < 0x80 {
  5096  					break
  5097  				}
  5098  			}
  5099  			if msglen < 0 {
  5100  				return ErrInvalidLengthProposal
  5101  			}
  5102  			postIndex := iNdEx + msglen
  5103  			if postIndex < 0 {
  5104  				return ErrInvalidLengthProposal
  5105  			}
  5106  			if postIndex > l {
  5107  				return io.ErrUnexpectedEOF
  5108  			}
  5109  			m.BinaryOptionsParamUpdateProposals = append(m.BinaryOptionsParamUpdateProposals, &BinaryOptionsMarketParamUpdateProposal{})
  5110  			if err := m.BinaryOptionsParamUpdateProposals[len(m.BinaryOptionsParamUpdateProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5111  				return err
  5112  			}
  5113  			iNdEx = postIndex
  5114  		case 11:
  5115  			if wireType != 2 {
  5116  				return fmt.Errorf("proto: wrong wireType = %d for field DenomDecimalsUpdateProposal", wireType)
  5117  			}
  5118  			var msglen int
  5119  			for shift := uint(0); ; shift += 7 {
  5120  				if shift >= 64 {
  5121  					return ErrIntOverflowProposal
  5122  				}
  5123  				if iNdEx >= l {
  5124  					return io.ErrUnexpectedEOF
  5125  				}
  5126  				b := dAtA[iNdEx]
  5127  				iNdEx++
  5128  				msglen |= int(b&0x7F) << shift
  5129  				if b < 0x80 {
  5130  					break
  5131  				}
  5132  			}
  5133  			if msglen < 0 {
  5134  				return ErrInvalidLengthProposal
  5135  			}
  5136  			postIndex := iNdEx + msglen
  5137  			if postIndex < 0 {
  5138  				return ErrInvalidLengthProposal
  5139  			}
  5140  			if postIndex > l {
  5141  				return io.ErrUnexpectedEOF
  5142  			}
  5143  			if m.DenomDecimalsUpdateProposal == nil {
  5144  				m.DenomDecimalsUpdateProposal = &UpdateDenomDecimalsProposal{}
  5145  			}
  5146  			if err := m.DenomDecimalsUpdateProposal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5147  				return err
  5148  			}
  5149  			iNdEx = postIndex
  5150  		case 12:
  5151  			if wireType != 2 {
  5152  				return fmt.Errorf("proto: wrong wireType = %d for field FeeDiscountProposal", wireType)
  5153  			}
  5154  			var msglen int
  5155  			for shift := uint(0); ; shift += 7 {
  5156  				if shift >= 64 {
  5157  					return ErrIntOverflowProposal
  5158  				}
  5159  				if iNdEx >= l {
  5160  					return io.ErrUnexpectedEOF
  5161  				}
  5162  				b := dAtA[iNdEx]
  5163  				iNdEx++
  5164  				msglen |= int(b&0x7F) << shift
  5165  				if b < 0x80 {
  5166  					break
  5167  				}
  5168  			}
  5169  			if msglen < 0 {
  5170  				return ErrInvalidLengthProposal
  5171  			}
  5172  			postIndex := iNdEx + msglen
  5173  			if postIndex < 0 {
  5174  				return ErrInvalidLengthProposal
  5175  			}
  5176  			if postIndex > l {
  5177  				return io.ErrUnexpectedEOF
  5178  			}
  5179  			if m.FeeDiscountProposal == nil {
  5180  				m.FeeDiscountProposal = &FeeDiscountProposal{}
  5181  			}
  5182  			if err := m.FeeDiscountProposal.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5183  				return err
  5184  			}
  5185  			iNdEx = postIndex
  5186  		case 13:
  5187  			if wireType != 2 {
  5188  				return fmt.Errorf("proto: wrong wireType = %d for field MarketForcedSettlementProposals", wireType)
  5189  			}
  5190  			var msglen int
  5191  			for shift := uint(0); ; shift += 7 {
  5192  				if shift >= 64 {
  5193  					return ErrIntOverflowProposal
  5194  				}
  5195  				if iNdEx >= l {
  5196  					return io.ErrUnexpectedEOF
  5197  				}
  5198  				b := dAtA[iNdEx]
  5199  				iNdEx++
  5200  				msglen |= int(b&0x7F) << shift
  5201  				if b < 0x80 {
  5202  					break
  5203  				}
  5204  			}
  5205  			if msglen < 0 {
  5206  				return ErrInvalidLengthProposal
  5207  			}
  5208  			postIndex := iNdEx + msglen
  5209  			if postIndex < 0 {
  5210  				return ErrInvalidLengthProposal
  5211  			}
  5212  			if postIndex > l {
  5213  				return io.ErrUnexpectedEOF
  5214  			}
  5215  			m.MarketForcedSettlementProposals = append(m.MarketForcedSettlementProposals, &MarketForcedSettlementProposal{})
  5216  			if err := m.MarketForcedSettlementProposals[len(m.MarketForcedSettlementProposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5217  				return err
  5218  			}
  5219  			iNdEx = postIndex
  5220  		default:
  5221  			iNdEx = preIndex
  5222  			skippy, err := skipProposal(dAtA[iNdEx:])
  5223  			if err != nil {
  5224  				return err
  5225  			}
  5226  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5227  				return ErrInvalidLengthProposal
  5228  			}
  5229  			if (iNdEx + skippy) > l {
  5230  				return io.ErrUnexpectedEOF
  5231  			}
  5232  			iNdEx += skippy
  5233  		}
  5234  	}
  5235  
  5236  	if iNdEx > l {
  5237  		return io.ErrUnexpectedEOF
  5238  	}
  5239  	return nil
  5240  }
  5241  func (m *SpotMarketLaunchProposal) Unmarshal(dAtA []byte) error {
  5242  	l := len(dAtA)
  5243  	iNdEx := 0
  5244  	for iNdEx < l {
  5245  		preIndex := iNdEx
  5246  		var wire uint64
  5247  		for shift := uint(0); ; shift += 7 {
  5248  			if shift >= 64 {
  5249  				return ErrIntOverflowProposal
  5250  			}
  5251  			if iNdEx >= l {
  5252  				return io.ErrUnexpectedEOF
  5253  			}
  5254  			b := dAtA[iNdEx]
  5255  			iNdEx++
  5256  			wire |= uint64(b&0x7F) << shift
  5257  			if b < 0x80 {
  5258  				break
  5259  			}
  5260  		}
  5261  		fieldNum := int32(wire >> 3)
  5262  		wireType := int(wire & 0x7)
  5263  		if wireType == 4 {
  5264  			return fmt.Errorf("proto: SpotMarketLaunchProposal: wiretype end group for non-group")
  5265  		}
  5266  		if fieldNum <= 0 {
  5267  			return fmt.Errorf("proto: SpotMarketLaunchProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  5268  		}
  5269  		switch fieldNum {
  5270  		case 1:
  5271  			if wireType != 2 {
  5272  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  5273  			}
  5274  			var stringLen uint64
  5275  			for shift := uint(0); ; shift += 7 {
  5276  				if shift >= 64 {
  5277  					return ErrIntOverflowProposal
  5278  				}
  5279  				if iNdEx >= l {
  5280  					return io.ErrUnexpectedEOF
  5281  				}
  5282  				b := dAtA[iNdEx]
  5283  				iNdEx++
  5284  				stringLen |= uint64(b&0x7F) << shift
  5285  				if b < 0x80 {
  5286  					break
  5287  				}
  5288  			}
  5289  			intStringLen := int(stringLen)
  5290  			if intStringLen < 0 {
  5291  				return ErrInvalidLengthProposal
  5292  			}
  5293  			postIndex := iNdEx + intStringLen
  5294  			if postIndex < 0 {
  5295  				return ErrInvalidLengthProposal
  5296  			}
  5297  			if postIndex > l {
  5298  				return io.ErrUnexpectedEOF
  5299  			}
  5300  			m.Title = string(dAtA[iNdEx:postIndex])
  5301  			iNdEx = postIndex
  5302  		case 2:
  5303  			if wireType != 2 {
  5304  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  5305  			}
  5306  			var stringLen uint64
  5307  			for shift := uint(0); ; shift += 7 {
  5308  				if shift >= 64 {
  5309  					return ErrIntOverflowProposal
  5310  				}
  5311  				if iNdEx >= l {
  5312  					return io.ErrUnexpectedEOF
  5313  				}
  5314  				b := dAtA[iNdEx]
  5315  				iNdEx++
  5316  				stringLen |= uint64(b&0x7F) << shift
  5317  				if b < 0x80 {
  5318  					break
  5319  				}
  5320  			}
  5321  			intStringLen := int(stringLen)
  5322  			if intStringLen < 0 {
  5323  				return ErrInvalidLengthProposal
  5324  			}
  5325  			postIndex := iNdEx + intStringLen
  5326  			if postIndex < 0 {
  5327  				return ErrInvalidLengthProposal
  5328  			}
  5329  			if postIndex > l {
  5330  				return io.ErrUnexpectedEOF
  5331  			}
  5332  			m.Description = string(dAtA[iNdEx:postIndex])
  5333  			iNdEx = postIndex
  5334  		case 3:
  5335  			if wireType != 2 {
  5336  				return fmt.Errorf("proto: wrong wireType = %d for field Ticker", wireType)
  5337  			}
  5338  			var stringLen uint64
  5339  			for shift := uint(0); ; shift += 7 {
  5340  				if shift >= 64 {
  5341  					return ErrIntOverflowProposal
  5342  				}
  5343  				if iNdEx >= l {
  5344  					return io.ErrUnexpectedEOF
  5345  				}
  5346  				b := dAtA[iNdEx]
  5347  				iNdEx++
  5348  				stringLen |= uint64(b&0x7F) << shift
  5349  				if b < 0x80 {
  5350  					break
  5351  				}
  5352  			}
  5353  			intStringLen := int(stringLen)
  5354  			if intStringLen < 0 {
  5355  				return ErrInvalidLengthProposal
  5356  			}
  5357  			postIndex := iNdEx + intStringLen
  5358  			if postIndex < 0 {
  5359  				return ErrInvalidLengthProposal
  5360  			}
  5361  			if postIndex > l {
  5362  				return io.ErrUnexpectedEOF
  5363  			}
  5364  			m.Ticker = string(dAtA[iNdEx:postIndex])
  5365  			iNdEx = postIndex
  5366  		case 4:
  5367  			if wireType != 2 {
  5368  				return fmt.Errorf("proto: wrong wireType = %d for field BaseDenom", wireType)
  5369  			}
  5370  			var stringLen uint64
  5371  			for shift := uint(0); ; shift += 7 {
  5372  				if shift >= 64 {
  5373  					return ErrIntOverflowProposal
  5374  				}
  5375  				if iNdEx >= l {
  5376  					return io.ErrUnexpectedEOF
  5377  				}
  5378  				b := dAtA[iNdEx]
  5379  				iNdEx++
  5380  				stringLen |= uint64(b&0x7F) << shift
  5381  				if b < 0x80 {
  5382  					break
  5383  				}
  5384  			}
  5385  			intStringLen := int(stringLen)
  5386  			if intStringLen < 0 {
  5387  				return ErrInvalidLengthProposal
  5388  			}
  5389  			postIndex := iNdEx + intStringLen
  5390  			if postIndex < 0 {
  5391  				return ErrInvalidLengthProposal
  5392  			}
  5393  			if postIndex > l {
  5394  				return io.ErrUnexpectedEOF
  5395  			}
  5396  			m.BaseDenom = string(dAtA[iNdEx:postIndex])
  5397  			iNdEx = postIndex
  5398  		case 5:
  5399  			if wireType != 2 {
  5400  				return fmt.Errorf("proto: wrong wireType = %d for field QuoteDenom", wireType)
  5401  			}
  5402  			var stringLen uint64
  5403  			for shift := uint(0); ; shift += 7 {
  5404  				if shift >= 64 {
  5405  					return ErrIntOverflowProposal
  5406  				}
  5407  				if iNdEx >= l {
  5408  					return io.ErrUnexpectedEOF
  5409  				}
  5410  				b := dAtA[iNdEx]
  5411  				iNdEx++
  5412  				stringLen |= uint64(b&0x7F) << shift
  5413  				if b < 0x80 {
  5414  					break
  5415  				}
  5416  			}
  5417  			intStringLen := int(stringLen)
  5418  			if intStringLen < 0 {
  5419  				return ErrInvalidLengthProposal
  5420  			}
  5421  			postIndex := iNdEx + intStringLen
  5422  			if postIndex < 0 {
  5423  				return ErrInvalidLengthProposal
  5424  			}
  5425  			if postIndex > l {
  5426  				return io.ErrUnexpectedEOF
  5427  			}
  5428  			m.QuoteDenom = string(dAtA[iNdEx:postIndex])
  5429  			iNdEx = postIndex
  5430  		case 6:
  5431  			if wireType != 2 {
  5432  				return fmt.Errorf("proto: wrong wireType = %d for field MinPriceTickSize", wireType)
  5433  			}
  5434  			var stringLen uint64
  5435  			for shift := uint(0); ; shift += 7 {
  5436  				if shift >= 64 {
  5437  					return ErrIntOverflowProposal
  5438  				}
  5439  				if iNdEx >= l {
  5440  					return io.ErrUnexpectedEOF
  5441  				}
  5442  				b := dAtA[iNdEx]
  5443  				iNdEx++
  5444  				stringLen |= uint64(b&0x7F) << shift
  5445  				if b < 0x80 {
  5446  					break
  5447  				}
  5448  			}
  5449  			intStringLen := int(stringLen)
  5450  			if intStringLen < 0 {
  5451  				return ErrInvalidLengthProposal
  5452  			}
  5453  			postIndex := iNdEx + intStringLen
  5454  			if postIndex < 0 {
  5455  				return ErrInvalidLengthProposal
  5456  			}
  5457  			if postIndex > l {
  5458  				return io.ErrUnexpectedEOF
  5459  			}
  5460  			if err := m.MinPriceTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5461  				return err
  5462  			}
  5463  			iNdEx = postIndex
  5464  		case 7:
  5465  			if wireType != 2 {
  5466  				return fmt.Errorf("proto: wrong wireType = %d for field MinQuantityTickSize", wireType)
  5467  			}
  5468  			var stringLen uint64
  5469  			for shift := uint(0); ; shift += 7 {
  5470  				if shift >= 64 {
  5471  					return ErrIntOverflowProposal
  5472  				}
  5473  				if iNdEx >= l {
  5474  					return io.ErrUnexpectedEOF
  5475  				}
  5476  				b := dAtA[iNdEx]
  5477  				iNdEx++
  5478  				stringLen |= uint64(b&0x7F) << shift
  5479  				if b < 0x80 {
  5480  					break
  5481  				}
  5482  			}
  5483  			intStringLen := int(stringLen)
  5484  			if intStringLen < 0 {
  5485  				return ErrInvalidLengthProposal
  5486  			}
  5487  			postIndex := iNdEx + intStringLen
  5488  			if postIndex < 0 {
  5489  				return ErrInvalidLengthProposal
  5490  			}
  5491  			if postIndex > l {
  5492  				return io.ErrUnexpectedEOF
  5493  			}
  5494  			if err := m.MinQuantityTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5495  				return err
  5496  			}
  5497  			iNdEx = postIndex
  5498  		case 8:
  5499  			if wireType != 2 {
  5500  				return fmt.Errorf("proto: wrong wireType = %d for field MakerFeeRate", wireType)
  5501  			}
  5502  			var stringLen uint64
  5503  			for shift := uint(0); ; shift += 7 {
  5504  				if shift >= 64 {
  5505  					return ErrIntOverflowProposal
  5506  				}
  5507  				if iNdEx >= l {
  5508  					return io.ErrUnexpectedEOF
  5509  				}
  5510  				b := dAtA[iNdEx]
  5511  				iNdEx++
  5512  				stringLen |= uint64(b&0x7F) << shift
  5513  				if b < 0x80 {
  5514  					break
  5515  				}
  5516  			}
  5517  			intStringLen := int(stringLen)
  5518  			if intStringLen < 0 {
  5519  				return ErrInvalidLengthProposal
  5520  			}
  5521  			postIndex := iNdEx + intStringLen
  5522  			if postIndex < 0 {
  5523  				return ErrInvalidLengthProposal
  5524  			}
  5525  			if postIndex > l {
  5526  				return io.ErrUnexpectedEOF
  5527  			}
  5528  			var v cosmossdk_io_math.LegacyDec
  5529  			m.MakerFeeRate = &v
  5530  			if err := m.MakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5531  				return err
  5532  			}
  5533  			iNdEx = postIndex
  5534  		case 9:
  5535  			if wireType != 2 {
  5536  				return fmt.Errorf("proto: wrong wireType = %d for field TakerFeeRate", wireType)
  5537  			}
  5538  			var stringLen uint64
  5539  			for shift := uint(0); ; shift += 7 {
  5540  				if shift >= 64 {
  5541  					return ErrIntOverflowProposal
  5542  				}
  5543  				if iNdEx >= l {
  5544  					return io.ErrUnexpectedEOF
  5545  				}
  5546  				b := dAtA[iNdEx]
  5547  				iNdEx++
  5548  				stringLen |= uint64(b&0x7F) << shift
  5549  				if b < 0x80 {
  5550  					break
  5551  				}
  5552  			}
  5553  			intStringLen := int(stringLen)
  5554  			if intStringLen < 0 {
  5555  				return ErrInvalidLengthProposal
  5556  			}
  5557  			postIndex := iNdEx + intStringLen
  5558  			if postIndex < 0 {
  5559  				return ErrInvalidLengthProposal
  5560  			}
  5561  			if postIndex > l {
  5562  				return io.ErrUnexpectedEOF
  5563  			}
  5564  			var v cosmossdk_io_math.LegacyDec
  5565  			m.TakerFeeRate = &v
  5566  			if err := m.TakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5567  				return err
  5568  			}
  5569  			iNdEx = postIndex
  5570  		case 10:
  5571  			if wireType != 2 {
  5572  				return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType)
  5573  			}
  5574  			var stringLen uint64
  5575  			for shift := uint(0); ; shift += 7 {
  5576  				if shift >= 64 {
  5577  					return ErrIntOverflowProposal
  5578  				}
  5579  				if iNdEx >= l {
  5580  					return io.ErrUnexpectedEOF
  5581  				}
  5582  				b := dAtA[iNdEx]
  5583  				iNdEx++
  5584  				stringLen |= uint64(b&0x7F) << shift
  5585  				if b < 0x80 {
  5586  					break
  5587  				}
  5588  			}
  5589  			intStringLen := int(stringLen)
  5590  			if intStringLen < 0 {
  5591  				return ErrInvalidLengthProposal
  5592  			}
  5593  			postIndex := iNdEx + intStringLen
  5594  			if postIndex < 0 {
  5595  				return ErrInvalidLengthProposal
  5596  			}
  5597  			if postIndex > l {
  5598  				return io.ErrUnexpectedEOF
  5599  			}
  5600  			if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5601  				return err
  5602  			}
  5603  			iNdEx = postIndex
  5604  		case 11:
  5605  			if wireType != 2 {
  5606  				return fmt.Errorf("proto: wrong wireType = %d for field AdminInfo", wireType)
  5607  			}
  5608  			var msglen int
  5609  			for shift := uint(0); ; shift += 7 {
  5610  				if shift >= 64 {
  5611  					return ErrIntOverflowProposal
  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 ErrInvalidLengthProposal
  5625  			}
  5626  			postIndex := iNdEx + msglen
  5627  			if postIndex < 0 {
  5628  				return ErrInvalidLengthProposal
  5629  			}
  5630  			if postIndex > l {
  5631  				return io.ErrUnexpectedEOF
  5632  			}
  5633  			if m.AdminInfo == nil {
  5634  				m.AdminInfo = &AdminInfo{}
  5635  			}
  5636  			if err := m.AdminInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5637  				return err
  5638  			}
  5639  			iNdEx = postIndex
  5640  		default:
  5641  			iNdEx = preIndex
  5642  			skippy, err := skipProposal(dAtA[iNdEx:])
  5643  			if err != nil {
  5644  				return err
  5645  			}
  5646  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5647  				return ErrInvalidLengthProposal
  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 *PerpetualMarketLaunchProposal) 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 ErrIntOverflowProposal
  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: PerpetualMarketLaunchProposal: wiretype end group for non-group")
  5685  		}
  5686  		if fieldNum <= 0 {
  5687  			return fmt.Errorf("proto: PerpetualMarketLaunchProposal: 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 Title", wireType)
  5693  			}
  5694  			var stringLen uint64
  5695  			for shift := uint(0); ; shift += 7 {
  5696  				if shift >= 64 {
  5697  					return ErrIntOverflowProposal
  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 ErrInvalidLengthProposal
  5712  			}
  5713  			postIndex := iNdEx + intStringLen
  5714  			if postIndex < 0 {
  5715  				return ErrInvalidLengthProposal
  5716  			}
  5717  			if postIndex > l {
  5718  				return io.ErrUnexpectedEOF
  5719  			}
  5720  			m.Title = string(dAtA[iNdEx:postIndex])
  5721  			iNdEx = postIndex
  5722  		case 2:
  5723  			if wireType != 2 {
  5724  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  5725  			}
  5726  			var stringLen uint64
  5727  			for shift := uint(0); ; shift += 7 {
  5728  				if shift >= 64 {
  5729  					return ErrIntOverflowProposal
  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 ErrInvalidLengthProposal
  5744  			}
  5745  			postIndex := iNdEx + intStringLen
  5746  			if postIndex < 0 {
  5747  				return ErrInvalidLengthProposal
  5748  			}
  5749  			if postIndex > l {
  5750  				return io.ErrUnexpectedEOF
  5751  			}
  5752  			m.Description = string(dAtA[iNdEx:postIndex])
  5753  			iNdEx = postIndex
  5754  		case 3:
  5755  			if wireType != 2 {
  5756  				return fmt.Errorf("proto: wrong wireType = %d for field Ticker", wireType)
  5757  			}
  5758  			var stringLen uint64
  5759  			for shift := uint(0); ; shift += 7 {
  5760  				if shift >= 64 {
  5761  					return ErrIntOverflowProposal
  5762  				}
  5763  				if iNdEx >= l {
  5764  					return io.ErrUnexpectedEOF
  5765  				}
  5766  				b := dAtA[iNdEx]
  5767  				iNdEx++
  5768  				stringLen |= uint64(b&0x7F) << shift
  5769  				if b < 0x80 {
  5770  					break
  5771  				}
  5772  			}
  5773  			intStringLen := int(stringLen)
  5774  			if intStringLen < 0 {
  5775  				return ErrInvalidLengthProposal
  5776  			}
  5777  			postIndex := iNdEx + intStringLen
  5778  			if postIndex < 0 {
  5779  				return ErrInvalidLengthProposal
  5780  			}
  5781  			if postIndex > l {
  5782  				return io.ErrUnexpectedEOF
  5783  			}
  5784  			m.Ticker = string(dAtA[iNdEx:postIndex])
  5785  			iNdEx = postIndex
  5786  		case 4:
  5787  			if wireType != 2 {
  5788  				return fmt.Errorf("proto: wrong wireType = %d for field QuoteDenom", wireType)
  5789  			}
  5790  			var stringLen uint64
  5791  			for shift := uint(0); ; shift += 7 {
  5792  				if shift >= 64 {
  5793  					return ErrIntOverflowProposal
  5794  				}
  5795  				if iNdEx >= l {
  5796  					return io.ErrUnexpectedEOF
  5797  				}
  5798  				b := dAtA[iNdEx]
  5799  				iNdEx++
  5800  				stringLen |= uint64(b&0x7F) << shift
  5801  				if b < 0x80 {
  5802  					break
  5803  				}
  5804  			}
  5805  			intStringLen := int(stringLen)
  5806  			if intStringLen < 0 {
  5807  				return ErrInvalidLengthProposal
  5808  			}
  5809  			postIndex := iNdEx + intStringLen
  5810  			if postIndex < 0 {
  5811  				return ErrInvalidLengthProposal
  5812  			}
  5813  			if postIndex > l {
  5814  				return io.ErrUnexpectedEOF
  5815  			}
  5816  			m.QuoteDenom = string(dAtA[iNdEx:postIndex])
  5817  			iNdEx = postIndex
  5818  		case 5:
  5819  			if wireType != 2 {
  5820  				return fmt.Errorf("proto: wrong wireType = %d for field OracleBase", wireType)
  5821  			}
  5822  			var stringLen uint64
  5823  			for shift := uint(0); ; shift += 7 {
  5824  				if shift >= 64 {
  5825  					return ErrIntOverflowProposal
  5826  				}
  5827  				if iNdEx >= l {
  5828  					return io.ErrUnexpectedEOF
  5829  				}
  5830  				b := dAtA[iNdEx]
  5831  				iNdEx++
  5832  				stringLen |= uint64(b&0x7F) << shift
  5833  				if b < 0x80 {
  5834  					break
  5835  				}
  5836  			}
  5837  			intStringLen := int(stringLen)
  5838  			if intStringLen < 0 {
  5839  				return ErrInvalidLengthProposal
  5840  			}
  5841  			postIndex := iNdEx + intStringLen
  5842  			if postIndex < 0 {
  5843  				return ErrInvalidLengthProposal
  5844  			}
  5845  			if postIndex > l {
  5846  				return io.ErrUnexpectedEOF
  5847  			}
  5848  			m.OracleBase = string(dAtA[iNdEx:postIndex])
  5849  			iNdEx = postIndex
  5850  		case 6:
  5851  			if wireType != 2 {
  5852  				return fmt.Errorf("proto: wrong wireType = %d for field OracleQuote", wireType)
  5853  			}
  5854  			var stringLen uint64
  5855  			for shift := uint(0); ; shift += 7 {
  5856  				if shift >= 64 {
  5857  					return ErrIntOverflowProposal
  5858  				}
  5859  				if iNdEx >= l {
  5860  					return io.ErrUnexpectedEOF
  5861  				}
  5862  				b := dAtA[iNdEx]
  5863  				iNdEx++
  5864  				stringLen |= uint64(b&0x7F) << shift
  5865  				if b < 0x80 {
  5866  					break
  5867  				}
  5868  			}
  5869  			intStringLen := int(stringLen)
  5870  			if intStringLen < 0 {
  5871  				return ErrInvalidLengthProposal
  5872  			}
  5873  			postIndex := iNdEx + intStringLen
  5874  			if postIndex < 0 {
  5875  				return ErrInvalidLengthProposal
  5876  			}
  5877  			if postIndex > l {
  5878  				return io.ErrUnexpectedEOF
  5879  			}
  5880  			m.OracleQuote = string(dAtA[iNdEx:postIndex])
  5881  			iNdEx = postIndex
  5882  		case 7:
  5883  			if wireType != 0 {
  5884  				return fmt.Errorf("proto: wrong wireType = %d for field OracleScaleFactor", wireType)
  5885  			}
  5886  			m.OracleScaleFactor = 0
  5887  			for shift := uint(0); ; shift += 7 {
  5888  				if shift >= 64 {
  5889  					return ErrIntOverflowProposal
  5890  				}
  5891  				if iNdEx >= l {
  5892  					return io.ErrUnexpectedEOF
  5893  				}
  5894  				b := dAtA[iNdEx]
  5895  				iNdEx++
  5896  				m.OracleScaleFactor |= uint32(b&0x7F) << shift
  5897  				if b < 0x80 {
  5898  					break
  5899  				}
  5900  			}
  5901  		case 8:
  5902  			if wireType != 0 {
  5903  				return fmt.Errorf("proto: wrong wireType = %d for field OracleType", wireType)
  5904  			}
  5905  			m.OracleType = 0
  5906  			for shift := uint(0); ; shift += 7 {
  5907  				if shift >= 64 {
  5908  					return ErrIntOverflowProposal
  5909  				}
  5910  				if iNdEx >= l {
  5911  					return io.ErrUnexpectedEOF
  5912  				}
  5913  				b := dAtA[iNdEx]
  5914  				iNdEx++
  5915  				m.OracleType |= types.OracleType(b&0x7F) << shift
  5916  				if b < 0x80 {
  5917  					break
  5918  				}
  5919  			}
  5920  		case 9:
  5921  			if wireType != 2 {
  5922  				return fmt.Errorf("proto: wrong wireType = %d for field InitialMarginRatio", wireType)
  5923  			}
  5924  			var stringLen uint64
  5925  			for shift := uint(0); ; shift += 7 {
  5926  				if shift >= 64 {
  5927  					return ErrIntOverflowProposal
  5928  				}
  5929  				if iNdEx >= l {
  5930  					return io.ErrUnexpectedEOF
  5931  				}
  5932  				b := dAtA[iNdEx]
  5933  				iNdEx++
  5934  				stringLen |= uint64(b&0x7F) << shift
  5935  				if b < 0x80 {
  5936  					break
  5937  				}
  5938  			}
  5939  			intStringLen := int(stringLen)
  5940  			if intStringLen < 0 {
  5941  				return ErrInvalidLengthProposal
  5942  			}
  5943  			postIndex := iNdEx + intStringLen
  5944  			if postIndex < 0 {
  5945  				return ErrInvalidLengthProposal
  5946  			}
  5947  			if postIndex > l {
  5948  				return io.ErrUnexpectedEOF
  5949  			}
  5950  			if err := m.InitialMarginRatio.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5951  				return err
  5952  			}
  5953  			iNdEx = postIndex
  5954  		case 10:
  5955  			if wireType != 2 {
  5956  				return fmt.Errorf("proto: wrong wireType = %d for field MaintenanceMarginRatio", wireType)
  5957  			}
  5958  			var stringLen uint64
  5959  			for shift := uint(0); ; shift += 7 {
  5960  				if shift >= 64 {
  5961  					return ErrIntOverflowProposal
  5962  				}
  5963  				if iNdEx >= l {
  5964  					return io.ErrUnexpectedEOF
  5965  				}
  5966  				b := dAtA[iNdEx]
  5967  				iNdEx++
  5968  				stringLen |= uint64(b&0x7F) << shift
  5969  				if b < 0x80 {
  5970  					break
  5971  				}
  5972  			}
  5973  			intStringLen := int(stringLen)
  5974  			if intStringLen < 0 {
  5975  				return ErrInvalidLengthProposal
  5976  			}
  5977  			postIndex := iNdEx + intStringLen
  5978  			if postIndex < 0 {
  5979  				return ErrInvalidLengthProposal
  5980  			}
  5981  			if postIndex > l {
  5982  				return io.ErrUnexpectedEOF
  5983  			}
  5984  			if err := m.MaintenanceMarginRatio.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5985  				return err
  5986  			}
  5987  			iNdEx = postIndex
  5988  		case 11:
  5989  			if wireType != 2 {
  5990  				return fmt.Errorf("proto: wrong wireType = %d for field MakerFeeRate", wireType)
  5991  			}
  5992  			var stringLen uint64
  5993  			for shift := uint(0); ; shift += 7 {
  5994  				if shift >= 64 {
  5995  					return ErrIntOverflowProposal
  5996  				}
  5997  				if iNdEx >= l {
  5998  					return io.ErrUnexpectedEOF
  5999  				}
  6000  				b := dAtA[iNdEx]
  6001  				iNdEx++
  6002  				stringLen |= uint64(b&0x7F) << shift
  6003  				if b < 0x80 {
  6004  					break
  6005  				}
  6006  			}
  6007  			intStringLen := int(stringLen)
  6008  			if intStringLen < 0 {
  6009  				return ErrInvalidLengthProposal
  6010  			}
  6011  			postIndex := iNdEx + intStringLen
  6012  			if postIndex < 0 {
  6013  				return ErrInvalidLengthProposal
  6014  			}
  6015  			if postIndex > l {
  6016  				return io.ErrUnexpectedEOF
  6017  			}
  6018  			if err := m.MakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6019  				return err
  6020  			}
  6021  			iNdEx = postIndex
  6022  		case 12:
  6023  			if wireType != 2 {
  6024  				return fmt.Errorf("proto: wrong wireType = %d for field TakerFeeRate", wireType)
  6025  			}
  6026  			var stringLen uint64
  6027  			for shift := uint(0); ; shift += 7 {
  6028  				if shift >= 64 {
  6029  					return ErrIntOverflowProposal
  6030  				}
  6031  				if iNdEx >= l {
  6032  					return io.ErrUnexpectedEOF
  6033  				}
  6034  				b := dAtA[iNdEx]
  6035  				iNdEx++
  6036  				stringLen |= uint64(b&0x7F) << shift
  6037  				if b < 0x80 {
  6038  					break
  6039  				}
  6040  			}
  6041  			intStringLen := int(stringLen)
  6042  			if intStringLen < 0 {
  6043  				return ErrInvalidLengthProposal
  6044  			}
  6045  			postIndex := iNdEx + intStringLen
  6046  			if postIndex < 0 {
  6047  				return ErrInvalidLengthProposal
  6048  			}
  6049  			if postIndex > l {
  6050  				return io.ErrUnexpectedEOF
  6051  			}
  6052  			if err := m.TakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6053  				return err
  6054  			}
  6055  			iNdEx = postIndex
  6056  		case 13:
  6057  			if wireType != 2 {
  6058  				return fmt.Errorf("proto: wrong wireType = %d for field MinPriceTickSize", wireType)
  6059  			}
  6060  			var stringLen uint64
  6061  			for shift := uint(0); ; shift += 7 {
  6062  				if shift >= 64 {
  6063  					return ErrIntOverflowProposal
  6064  				}
  6065  				if iNdEx >= l {
  6066  					return io.ErrUnexpectedEOF
  6067  				}
  6068  				b := dAtA[iNdEx]
  6069  				iNdEx++
  6070  				stringLen |= uint64(b&0x7F) << shift
  6071  				if b < 0x80 {
  6072  					break
  6073  				}
  6074  			}
  6075  			intStringLen := int(stringLen)
  6076  			if intStringLen < 0 {
  6077  				return ErrInvalidLengthProposal
  6078  			}
  6079  			postIndex := iNdEx + intStringLen
  6080  			if postIndex < 0 {
  6081  				return ErrInvalidLengthProposal
  6082  			}
  6083  			if postIndex > l {
  6084  				return io.ErrUnexpectedEOF
  6085  			}
  6086  			if err := m.MinPriceTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6087  				return err
  6088  			}
  6089  			iNdEx = postIndex
  6090  		case 14:
  6091  			if wireType != 2 {
  6092  				return fmt.Errorf("proto: wrong wireType = %d for field MinQuantityTickSize", wireType)
  6093  			}
  6094  			var stringLen uint64
  6095  			for shift := uint(0); ; shift += 7 {
  6096  				if shift >= 64 {
  6097  					return ErrIntOverflowProposal
  6098  				}
  6099  				if iNdEx >= l {
  6100  					return io.ErrUnexpectedEOF
  6101  				}
  6102  				b := dAtA[iNdEx]
  6103  				iNdEx++
  6104  				stringLen |= uint64(b&0x7F) << shift
  6105  				if b < 0x80 {
  6106  					break
  6107  				}
  6108  			}
  6109  			intStringLen := int(stringLen)
  6110  			if intStringLen < 0 {
  6111  				return ErrInvalidLengthProposal
  6112  			}
  6113  			postIndex := iNdEx + intStringLen
  6114  			if postIndex < 0 {
  6115  				return ErrInvalidLengthProposal
  6116  			}
  6117  			if postIndex > l {
  6118  				return io.ErrUnexpectedEOF
  6119  			}
  6120  			if err := m.MinQuantityTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6121  				return err
  6122  			}
  6123  			iNdEx = postIndex
  6124  		case 15:
  6125  			if wireType != 2 {
  6126  				return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType)
  6127  			}
  6128  			var stringLen uint64
  6129  			for shift := uint(0); ; shift += 7 {
  6130  				if shift >= 64 {
  6131  					return ErrIntOverflowProposal
  6132  				}
  6133  				if iNdEx >= l {
  6134  					return io.ErrUnexpectedEOF
  6135  				}
  6136  				b := dAtA[iNdEx]
  6137  				iNdEx++
  6138  				stringLen |= uint64(b&0x7F) << shift
  6139  				if b < 0x80 {
  6140  					break
  6141  				}
  6142  			}
  6143  			intStringLen := int(stringLen)
  6144  			if intStringLen < 0 {
  6145  				return ErrInvalidLengthProposal
  6146  			}
  6147  			postIndex := iNdEx + intStringLen
  6148  			if postIndex < 0 {
  6149  				return ErrInvalidLengthProposal
  6150  			}
  6151  			if postIndex > l {
  6152  				return io.ErrUnexpectedEOF
  6153  			}
  6154  			if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6155  				return err
  6156  			}
  6157  			iNdEx = postIndex
  6158  		case 16:
  6159  			if wireType != 2 {
  6160  				return fmt.Errorf("proto: wrong wireType = %d for field AdminInfo", wireType)
  6161  			}
  6162  			var msglen int
  6163  			for shift := uint(0); ; shift += 7 {
  6164  				if shift >= 64 {
  6165  					return ErrIntOverflowProposal
  6166  				}
  6167  				if iNdEx >= l {
  6168  					return io.ErrUnexpectedEOF
  6169  				}
  6170  				b := dAtA[iNdEx]
  6171  				iNdEx++
  6172  				msglen |= int(b&0x7F) << shift
  6173  				if b < 0x80 {
  6174  					break
  6175  				}
  6176  			}
  6177  			if msglen < 0 {
  6178  				return ErrInvalidLengthProposal
  6179  			}
  6180  			postIndex := iNdEx + msglen
  6181  			if postIndex < 0 {
  6182  				return ErrInvalidLengthProposal
  6183  			}
  6184  			if postIndex > l {
  6185  				return io.ErrUnexpectedEOF
  6186  			}
  6187  			if m.AdminInfo == nil {
  6188  				m.AdminInfo = &AdminInfo{}
  6189  			}
  6190  			if err := m.AdminInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6191  				return err
  6192  			}
  6193  			iNdEx = postIndex
  6194  		default:
  6195  			iNdEx = preIndex
  6196  			skippy, err := skipProposal(dAtA[iNdEx:])
  6197  			if err != nil {
  6198  				return err
  6199  			}
  6200  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6201  				return ErrInvalidLengthProposal
  6202  			}
  6203  			if (iNdEx + skippy) > l {
  6204  				return io.ErrUnexpectedEOF
  6205  			}
  6206  			iNdEx += skippy
  6207  		}
  6208  	}
  6209  
  6210  	if iNdEx > l {
  6211  		return io.ErrUnexpectedEOF
  6212  	}
  6213  	return nil
  6214  }
  6215  func (m *BinaryOptionsMarketLaunchProposal) Unmarshal(dAtA []byte) error {
  6216  	l := len(dAtA)
  6217  	iNdEx := 0
  6218  	for iNdEx < l {
  6219  		preIndex := iNdEx
  6220  		var wire uint64
  6221  		for shift := uint(0); ; shift += 7 {
  6222  			if shift >= 64 {
  6223  				return ErrIntOverflowProposal
  6224  			}
  6225  			if iNdEx >= l {
  6226  				return io.ErrUnexpectedEOF
  6227  			}
  6228  			b := dAtA[iNdEx]
  6229  			iNdEx++
  6230  			wire |= uint64(b&0x7F) << shift
  6231  			if b < 0x80 {
  6232  				break
  6233  			}
  6234  		}
  6235  		fieldNum := int32(wire >> 3)
  6236  		wireType := int(wire & 0x7)
  6237  		if wireType == 4 {
  6238  			return fmt.Errorf("proto: BinaryOptionsMarketLaunchProposal: wiretype end group for non-group")
  6239  		}
  6240  		if fieldNum <= 0 {
  6241  			return fmt.Errorf("proto: BinaryOptionsMarketLaunchProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  6242  		}
  6243  		switch fieldNum {
  6244  		case 1:
  6245  			if wireType != 2 {
  6246  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  6247  			}
  6248  			var stringLen uint64
  6249  			for shift := uint(0); ; shift += 7 {
  6250  				if shift >= 64 {
  6251  					return ErrIntOverflowProposal
  6252  				}
  6253  				if iNdEx >= l {
  6254  					return io.ErrUnexpectedEOF
  6255  				}
  6256  				b := dAtA[iNdEx]
  6257  				iNdEx++
  6258  				stringLen |= uint64(b&0x7F) << shift
  6259  				if b < 0x80 {
  6260  					break
  6261  				}
  6262  			}
  6263  			intStringLen := int(stringLen)
  6264  			if intStringLen < 0 {
  6265  				return ErrInvalidLengthProposal
  6266  			}
  6267  			postIndex := iNdEx + intStringLen
  6268  			if postIndex < 0 {
  6269  				return ErrInvalidLengthProposal
  6270  			}
  6271  			if postIndex > l {
  6272  				return io.ErrUnexpectedEOF
  6273  			}
  6274  			m.Title = string(dAtA[iNdEx:postIndex])
  6275  			iNdEx = postIndex
  6276  		case 2:
  6277  			if wireType != 2 {
  6278  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  6279  			}
  6280  			var stringLen uint64
  6281  			for shift := uint(0); ; shift += 7 {
  6282  				if shift >= 64 {
  6283  					return ErrIntOverflowProposal
  6284  				}
  6285  				if iNdEx >= l {
  6286  					return io.ErrUnexpectedEOF
  6287  				}
  6288  				b := dAtA[iNdEx]
  6289  				iNdEx++
  6290  				stringLen |= uint64(b&0x7F) << shift
  6291  				if b < 0x80 {
  6292  					break
  6293  				}
  6294  			}
  6295  			intStringLen := int(stringLen)
  6296  			if intStringLen < 0 {
  6297  				return ErrInvalidLengthProposal
  6298  			}
  6299  			postIndex := iNdEx + intStringLen
  6300  			if postIndex < 0 {
  6301  				return ErrInvalidLengthProposal
  6302  			}
  6303  			if postIndex > l {
  6304  				return io.ErrUnexpectedEOF
  6305  			}
  6306  			m.Description = string(dAtA[iNdEx:postIndex])
  6307  			iNdEx = postIndex
  6308  		case 3:
  6309  			if wireType != 2 {
  6310  				return fmt.Errorf("proto: wrong wireType = %d for field Ticker", wireType)
  6311  			}
  6312  			var stringLen uint64
  6313  			for shift := uint(0); ; shift += 7 {
  6314  				if shift >= 64 {
  6315  					return ErrIntOverflowProposal
  6316  				}
  6317  				if iNdEx >= l {
  6318  					return io.ErrUnexpectedEOF
  6319  				}
  6320  				b := dAtA[iNdEx]
  6321  				iNdEx++
  6322  				stringLen |= uint64(b&0x7F) << shift
  6323  				if b < 0x80 {
  6324  					break
  6325  				}
  6326  			}
  6327  			intStringLen := int(stringLen)
  6328  			if intStringLen < 0 {
  6329  				return ErrInvalidLengthProposal
  6330  			}
  6331  			postIndex := iNdEx + intStringLen
  6332  			if postIndex < 0 {
  6333  				return ErrInvalidLengthProposal
  6334  			}
  6335  			if postIndex > l {
  6336  				return io.ErrUnexpectedEOF
  6337  			}
  6338  			m.Ticker = string(dAtA[iNdEx:postIndex])
  6339  			iNdEx = postIndex
  6340  		case 4:
  6341  			if wireType != 2 {
  6342  				return fmt.Errorf("proto: wrong wireType = %d for field OracleSymbol", wireType)
  6343  			}
  6344  			var stringLen uint64
  6345  			for shift := uint(0); ; shift += 7 {
  6346  				if shift >= 64 {
  6347  					return ErrIntOverflowProposal
  6348  				}
  6349  				if iNdEx >= l {
  6350  					return io.ErrUnexpectedEOF
  6351  				}
  6352  				b := dAtA[iNdEx]
  6353  				iNdEx++
  6354  				stringLen |= uint64(b&0x7F) << shift
  6355  				if b < 0x80 {
  6356  					break
  6357  				}
  6358  			}
  6359  			intStringLen := int(stringLen)
  6360  			if intStringLen < 0 {
  6361  				return ErrInvalidLengthProposal
  6362  			}
  6363  			postIndex := iNdEx + intStringLen
  6364  			if postIndex < 0 {
  6365  				return ErrInvalidLengthProposal
  6366  			}
  6367  			if postIndex > l {
  6368  				return io.ErrUnexpectedEOF
  6369  			}
  6370  			m.OracleSymbol = string(dAtA[iNdEx:postIndex])
  6371  			iNdEx = postIndex
  6372  		case 5:
  6373  			if wireType != 2 {
  6374  				return fmt.Errorf("proto: wrong wireType = %d for field OracleProvider", wireType)
  6375  			}
  6376  			var stringLen uint64
  6377  			for shift := uint(0); ; shift += 7 {
  6378  				if shift >= 64 {
  6379  					return ErrIntOverflowProposal
  6380  				}
  6381  				if iNdEx >= l {
  6382  					return io.ErrUnexpectedEOF
  6383  				}
  6384  				b := dAtA[iNdEx]
  6385  				iNdEx++
  6386  				stringLen |= uint64(b&0x7F) << shift
  6387  				if b < 0x80 {
  6388  					break
  6389  				}
  6390  			}
  6391  			intStringLen := int(stringLen)
  6392  			if intStringLen < 0 {
  6393  				return ErrInvalidLengthProposal
  6394  			}
  6395  			postIndex := iNdEx + intStringLen
  6396  			if postIndex < 0 {
  6397  				return ErrInvalidLengthProposal
  6398  			}
  6399  			if postIndex > l {
  6400  				return io.ErrUnexpectedEOF
  6401  			}
  6402  			m.OracleProvider = string(dAtA[iNdEx:postIndex])
  6403  			iNdEx = postIndex
  6404  		case 6:
  6405  			if wireType != 0 {
  6406  				return fmt.Errorf("proto: wrong wireType = %d for field OracleType", wireType)
  6407  			}
  6408  			m.OracleType = 0
  6409  			for shift := uint(0); ; shift += 7 {
  6410  				if shift >= 64 {
  6411  					return ErrIntOverflowProposal
  6412  				}
  6413  				if iNdEx >= l {
  6414  					return io.ErrUnexpectedEOF
  6415  				}
  6416  				b := dAtA[iNdEx]
  6417  				iNdEx++
  6418  				m.OracleType |= types.OracleType(b&0x7F) << shift
  6419  				if b < 0x80 {
  6420  					break
  6421  				}
  6422  			}
  6423  		case 7:
  6424  			if wireType != 0 {
  6425  				return fmt.Errorf("proto: wrong wireType = %d for field OracleScaleFactor", wireType)
  6426  			}
  6427  			m.OracleScaleFactor = 0
  6428  			for shift := uint(0); ; shift += 7 {
  6429  				if shift >= 64 {
  6430  					return ErrIntOverflowProposal
  6431  				}
  6432  				if iNdEx >= l {
  6433  					return io.ErrUnexpectedEOF
  6434  				}
  6435  				b := dAtA[iNdEx]
  6436  				iNdEx++
  6437  				m.OracleScaleFactor |= uint32(b&0x7F) << shift
  6438  				if b < 0x80 {
  6439  					break
  6440  				}
  6441  			}
  6442  		case 8:
  6443  			if wireType != 0 {
  6444  				return fmt.Errorf("proto: wrong wireType = %d for field ExpirationTimestamp", wireType)
  6445  			}
  6446  			m.ExpirationTimestamp = 0
  6447  			for shift := uint(0); ; shift += 7 {
  6448  				if shift >= 64 {
  6449  					return ErrIntOverflowProposal
  6450  				}
  6451  				if iNdEx >= l {
  6452  					return io.ErrUnexpectedEOF
  6453  				}
  6454  				b := dAtA[iNdEx]
  6455  				iNdEx++
  6456  				m.ExpirationTimestamp |= int64(b&0x7F) << shift
  6457  				if b < 0x80 {
  6458  					break
  6459  				}
  6460  			}
  6461  		case 9:
  6462  			if wireType != 0 {
  6463  				return fmt.Errorf("proto: wrong wireType = %d for field SettlementTimestamp", wireType)
  6464  			}
  6465  			m.SettlementTimestamp = 0
  6466  			for shift := uint(0); ; shift += 7 {
  6467  				if shift >= 64 {
  6468  					return ErrIntOverflowProposal
  6469  				}
  6470  				if iNdEx >= l {
  6471  					return io.ErrUnexpectedEOF
  6472  				}
  6473  				b := dAtA[iNdEx]
  6474  				iNdEx++
  6475  				m.SettlementTimestamp |= int64(b&0x7F) << shift
  6476  				if b < 0x80 {
  6477  					break
  6478  				}
  6479  			}
  6480  		case 10:
  6481  			if wireType != 2 {
  6482  				return fmt.Errorf("proto: wrong wireType = %d for field Admin", wireType)
  6483  			}
  6484  			var stringLen uint64
  6485  			for shift := uint(0); ; shift += 7 {
  6486  				if shift >= 64 {
  6487  					return ErrIntOverflowProposal
  6488  				}
  6489  				if iNdEx >= l {
  6490  					return io.ErrUnexpectedEOF
  6491  				}
  6492  				b := dAtA[iNdEx]
  6493  				iNdEx++
  6494  				stringLen |= uint64(b&0x7F) << shift
  6495  				if b < 0x80 {
  6496  					break
  6497  				}
  6498  			}
  6499  			intStringLen := int(stringLen)
  6500  			if intStringLen < 0 {
  6501  				return ErrInvalidLengthProposal
  6502  			}
  6503  			postIndex := iNdEx + intStringLen
  6504  			if postIndex < 0 {
  6505  				return ErrInvalidLengthProposal
  6506  			}
  6507  			if postIndex > l {
  6508  				return io.ErrUnexpectedEOF
  6509  			}
  6510  			m.Admin = string(dAtA[iNdEx:postIndex])
  6511  			iNdEx = postIndex
  6512  		case 11:
  6513  			if wireType != 2 {
  6514  				return fmt.Errorf("proto: wrong wireType = %d for field QuoteDenom", wireType)
  6515  			}
  6516  			var stringLen uint64
  6517  			for shift := uint(0); ; shift += 7 {
  6518  				if shift >= 64 {
  6519  					return ErrIntOverflowProposal
  6520  				}
  6521  				if iNdEx >= l {
  6522  					return io.ErrUnexpectedEOF
  6523  				}
  6524  				b := dAtA[iNdEx]
  6525  				iNdEx++
  6526  				stringLen |= uint64(b&0x7F) << shift
  6527  				if b < 0x80 {
  6528  					break
  6529  				}
  6530  			}
  6531  			intStringLen := int(stringLen)
  6532  			if intStringLen < 0 {
  6533  				return ErrInvalidLengthProposal
  6534  			}
  6535  			postIndex := iNdEx + intStringLen
  6536  			if postIndex < 0 {
  6537  				return ErrInvalidLengthProposal
  6538  			}
  6539  			if postIndex > l {
  6540  				return io.ErrUnexpectedEOF
  6541  			}
  6542  			m.QuoteDenom = string(dAtA[iNdEx:postIndex])
  6543  			iNdEx = postIndex
  6544  		case 12:
  6545  			if wireType != 2 {
  6546  				return fmt.Errorf("proto: wrong wireType = %d for field MakerFeeRate", wireType)
  6547  			}
  6548  			var stringLen uint64
  6549  			for shift := uint(0); ; shift += 7 {
  6550  				if shift >= 64 {
  6551  					return ErrIntOverflowProposal
  6552  				}
  6553  				if iNdEx >= l {
  6554  					return io.ErrUnexpectedEOF
  6555  				}
  6556  				b := dAtA[iNdEx]
  6557  				iNdEx++
  6558  				stringLen |= uint64(b&0x7F) << shift
  6559  				if b < 0x80 {
  6560  					break
  6561  				}
  6562  			}
  6563  			intStringLen := int(stringLen)
  6564  			if intStringLen < 0 {
  6565  				return ErrInvalidLengthProposal
  6566  			}
  6567  			postIndex := iNdEx + intStringLen
  6568  			if postIndex < 0 {
  6569  				return ErrInvalidLengthProposal
  6570  			}
  6571  			if postIndex > l {
  6572  				return io.ErrUnexpectedEOF
  6573  			}
  6574  			if err := m.MakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6575  				return err
  6576  			}
  6577  			iNdEx = postIndex
  6578  		case 13:
  6579  			if wireType != 2 {
  6580  				return fmt.Errorf("proto: wrong wireType = %d for field TakerFeeRate", wireType)
  6581  			}
  6582  			var stringLen uint64
  6583  			for shift := uint(0); ; shift += 7 {
  6584  				if shift >= 64 {
  6585  					return ErrIntOverflowProposal
  6586  				}
  6587  				if iNdEx >= l {
  6588  					return io.ErrUnexpectedEOF
  6589  				}
  6590  				b := dAtA[iNdEx]
  6591  				iNdEx++
  6592  				stringLen |= uint64(b&0x7F) << shift
  6593  				if b < 0x80 {
  6594  					break
  6595  				}
  6596  			}
  6597  			intStringLen := int(stringLen)
  6598  			if intStringLen < 0 {
  6599  				return ErrInvalidLengthProposal
  6600  			}
  6601  			postIndex := iNdEx + intStringLen
  6602  			if postIndex < 0 {
  6603  				return ErrInvalidLengthProposal
  6604  			}
  6605  			if postIndex > l {
  6606  				return io.ErrUnexpectedEOF
  6607  			}
  6608  			if err := m.TakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6609  				return err
  6610  			}
  6611  			iNdEx = postIndex
  6612  		case 14:
  6613  			if wireType != 2 {
  6614  				return fmt.Errorf("proto: wrong wireType = %d for field MinPriceTickSize", wireType)
  6615  			}
  6616  			var stringLen uint64
  6617  			for shift := uint(0); ; shift += 7 {
  6618  				if shift >= 64 {
  6619  					return ErrIntOverflowProposal
  6620  				}
  6621  				if iNdEx >= l {
  6622  					return io.ErrUnexpectedEOF
  6623  				}
  6624  				b := dAtA[iNdEx]
  6625  				iNdEx++
  6626  				stringLen |= uint64(b&0x7F) << shift
  6627  				if b < 0x80 {
  6628  					break
  6629  				}
  6630  			}
  6631  			intStringLen := int(stringLen)
  6632  			if intStringLen < 0 {
  6633  				return ErrInvalidLengthProposal
  6634  			}
  6635  			postIndex := iNdEx + intStringLen
  6636  			if postIndex < 0 {
  6637  				return ErrInvalidLengthProposal
  6638  			}
  6639  			if postIndex > l {
  6640  				return io.ErrUnexpectedEOF
  6641  			}
  6642  			if err := m.MinPriceTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6643  				return err
  6644  			}
  6645  			iNdEx = postIndex
  6646  		case 15:
  6647  			if wireType != 2 {
  6648  				return fmt.Errorf("proto: wrong wireType = %d for field MinQuantityTickSize", wireType)
  6649  			}
  6650  			var stringLen uint64
  6651  			for shift := uint(0); ; shift += 7 {
  6652  				if shift >= 64 {
  6653  					return ErrIntOverflowProposal
  6654  				}
  6655  				if iNdEx >= l {
  6656  					return io.ErrUnexpectedEOF
  6657  				}
  6658  				b := dAtA[iNdEx]
  6659  				iNdEx++
  6660  				stringLen |= uint64(b&0x7F) << shift
  6661  				if b < 0x80 {
  6662  					break
  6663  				}
  6664  			}
  6665  			intStringLen := int(stringLen)
  6666  			if intStringLen < 0 {
  6667  				return ErrInvalidLengthProposal
  6668  			}
  6669  			postIndex := iNdEx + intStringLen
  6670  			if postIndex < 0 {
  6671  				return ErrInvalidLengthProposal
  6672  			}
  6673  			if postIndex > l {
  6674  				return io.ErrUnexpectedEOF
  6675  			}
  6676  			if err := m.MinQuantityTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6677  				return err
  6678  			}
  6679  			iNdEx = postIndex
  6680  		case 16:
  6681  			if wireType != 2 {
  6682  				return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType)
  6683  			}
  6684  			var stringLen uint64
  6685  			for shift := uint(0); ; shift += 7 {
  6686  				if shift >= 64 {
  6687  					return ErrIntOverflowProposal
  6688  				}
  6689  				if iNdEx >= l {
  6690  					return io.ErrUnexpectedEOF
  6691  				}
  6692  				b := dAtA[iNdEx]
  6693  				iNdEx++
  6694  				stringLen |= uint64(b&0x7F) << shift
  6695  				if b < 0x80 {
  6696  					break
  6697  				}
  6698  			}
  6699  			intStringLen := int(stringLen)
  6700  			if intStringLen < 0 {
  6701  				return ErrInvalidLengthProposal
  6702  			}
  6703  			postIndex := iNdEx + intStringLen
  6704  			if postIndex < 0 {
  6705  				return ErrInvalidLengthProposal
  6706  			}
  6707  			if postIndex > l {
  6708  				return io.ErrUnexpectedEOF
  6709  			}
  6710  			if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6711  				return err
  6712  			}
  6713  			iNdEx = postIndex
  6714  		case 17:
  6715  			if wireType != 0 {
  6716  				return fmt.Errorf("proto: wrong wireType = %d for field AdminPermissions", wireType)
  6717  			}
  6718  			m.AdminPermissions = 0
  6719  			for shift := uint(0); ; shift += 7 {
  6720  				if shift >= 64 {
  6721  					return ErrIntOverflowProposal
  6722  				}
  6723  				if iNdEx >= l {
  6724  					return io.ErrUnexpectedEOF
  6725  				}
  6726  				b := dAtA[iNdEx]
  6727  				iNdEx++
  6728  				m.AdminPermissions |= uint32(b&0x7F) << shift
  6729  				if b < 0x80 {
  6730  					break
  6731  				}
  6732  			}
  6733  		default:
  6734  			iNdEx = preIndex
  6735  			skippy, err := skipProposal(dAtA[iNdEx:])
  6736  			if err != nil {
  6737  				return err
  6738  			}
  6739  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  6740  				return ErrInvalidLengthProposal
  6741  			}
  6742  			if (iNdEx + skippy) > l {
  6743  				return io.ErrUnexpectedEOF
  6744  			}
  6745  			iNdEx += skippy
  6746  		}
  6747  	}
  6748  
  6749  	if iNdEx > l {
  6750  		return io.ErrUnexpectedEOF
  6751  	}
  6752  	return nil
  6753  }
  6754  func (m *ExpiryFuturesMarketLaunchProposal) Unmarshal(dAtA []byte) error {
  6755  	l := len(dAtA)
  6756  	iNdEx := 0
  6757  	for iNdEx < l {
  6758  		preIndex := iNdEx
  6759  		var wire uint64
  6760  		for shift := uint(0); ; shift += 7 {
  6761  			if shift >= 64 {
  6762  				return ErrIntOverflowProposal
  6763  			}
  6764  			if iNdEx >= l {
  6765  				return io.ErrUnexpectedEOF
  6766  			}
  6767  			b := dAtA[iNdEx]
  6768  			iNdEx++
  6769  			wire |= uint64(b&0x7F) << shift
  6770  			if b < 0x80 {
  6771  				break
  6772  			}
  6773  		}
  6774  		fieldNum := int32(wire >> 3)
  6775  		wireType := int(wire & 0x7)
  6776  		if wireType == 4 {
  6777  			return fmt.Errorf("proto: ExpiryFuturesMarketLaunchProposal: wiretype end group for non-group")
  6778  		}
  6779  		if fieldNum <= 0 {
  6780  			return fmt.Errorf("proto: ExpiryFuturesMarketLaunchProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  6781  		}
  6782  		switch fieldNum {
  6783  		case 1:
  6784  			if wireType != 2 {
  6785  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  6786  			}
  6787  			var stringLen uint64
  6788  			for shift := uint(0); ; shift += 7 {
  6789  				if shift >= 64 {
  6790  					return ErrIntOverflowProposal
  6791  				}
  6792  				if iNdEx >= l {
  6793  					return io.ErrUnexpectedEOF
  6794  				}
  6795  				b := dAtA[iNdEx]
  6796  				iNdEx++
  6797  				stringLen |= uint64(b&0x7F) << shift
  6798  				if b < 0x80 {
  6799  					break
  6800  				}
  6801  			}
  6802  			intStringLen := int(stringLen)
  6803  			if intStringLen < 0 {
  6804  				return ErrInvalidLengthProposal
  6805  			}
  6806  			postIndex := iNdEx + intStringLen
  6807  			if postIndex < 0 {
  6808  				return ErrInvalidLengthProposal
  6809  			}
  6810  			if postIndex > l {
  6811  				return io.ErrUnexpectedEOF
  6812  			}
  6813  			m.Title = string(dAtA[iNdEx:postIndex])
  6814  			iNdEx = postIndex
  6815  		case 2:
  6816  			if wireType != 2 {
  6817  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  6818  			}
  6819  			var stringLen uint64
  6820  			for shift := uint(0); ; shift += 7 {
  6821  				if shift >= 64 {
  6822  					return ErrIntOverflowProposal
  6823  				}
  6824  				if iNdEx >= l {
  6825  					return io.ErrUnexpectedEOF
  6826  				}
  6827  				b := dAtA[iNdEx]
  6828  				iNdEx++
  6829  				stringLen |= uint64(b&0x7F) << shift
  6830  				if b < 0x80 {
  6831  					break
  6832  				}
  6833  			}
  6834  			intStringLen := int(stringLen)
  6835  			if intStringLen < 0 {
  6836  				return ErrInvalidLengthProposal
  6837  			}
  6838  			postIndex := iNdEx + intStringLen
  6839  			if postIndex < 0 {
  6840  				return ErrInvalidLengthProposal
  6841  			}
  6842  			if postIndex > l {
  6843  				return io.ErrUnexpectedEOF
  6844  			}
  6845  			m.Description = string(dAtA[iNdEx:postIndex])
  6846  			iNdEx = postIndex
  6847  		case 3:
  6848  			if wireType != 2 {
  6849  				return fmt.Errorf("proto: wrong wireType = %d for field Ticker", wireType)
  6850  			}
  6851  			var stringLen uint64
  6852  			for shift := uint(0); ; shift += 7 {
  6853  				if shift >= 64 {
  6854  					return ErrIntOverflowProposal
  6855  				}
  6856  				if iNdEx >= l {
  6857  					return io.ErrUnexpectedEOF
  6858  				}
  6859  				b := dAtA[iNdEx]
  6860  				iNdEx++
  6861  				stringLen |= uint64(b&0x7F) << shift
  6862  				if b < 0x80 {
  6863  					break
  6864  				}
  6865  			}
  6866  			intStringLen := int(stringLen)
  6867  			if intStringLen < 0 {
  6868  				return ErrInvalidLengthProposal
  6869  			}
  6870  			postIndex := iNdEx + intStringLen
  6871  			if postIndex < 0 {
  6872  				return ErrInvalidLengthProposal
  6873  			}
  6874  			if postIndex > l {
  6875  				return io.ErrUnexpectedEOF
  6876  			}
  6877  			m.Ticker = string(dAtA[iNdEx:postIndex])
  6878  			iNdEx = postIndex
  6879  		case 4:
  6880  			if wireType != 2 {
  6881  				return fmt.Errorf("proto: wrong wireType = %d for field QuoteDenom", wireType)
  6882  			}
  6883  			var stringLen uint64
  6884  			for shift := uint(0); ; shift += 7 {
  6885  				if shift >= 64 {
  6886  					return ErrIntOverflowProposal
  6887  				}
  6888  				if iNdEx >= l {
  6889  					return io.ErrUnexpectedEOF
  6890  				}
  6891  				b := dAtA[iNdEx]
  6892  				iNdEx++
  6893  				stringLen |= uint64(b&0x7F) << shift
  6894  				if b < 0x80 {
  6895  					break
  6896  				}
  6897  			}
  6898  			intStringLen := int(stringLen)
  6899  			if intStringLen < 0 {
  6900  				return ErrInvalidLengthProposal
  6901  			}
  6902  			postIndex := iNdEx + intStringLen
  6903  			if postIndex < 0 {
  6904  				return ErrInvalidLengthProposal
  6905  			}
  6906  			if postIndex > l {
  6907  				return io.ErrUnexpectedEOF
  6908  			}
  6909  			m.QuoteDenom = string(dAtA[iNdEx:postIndex])
  6910  			iNdEx = postIndex
  6911  		case 5:
  6912  			if wireType != 2 {
  6913  				return fmt.Errorf("proto: wrong wireType = %d for field OracleBase", wireType)
  6914  			}
  6915  			var stringLen uint64
  6916  			for shift := uint(0); ; shift += 7 {
  6917  				if shift >= 64 {
  6918  					return ErrIntOverflowProposal
  6919  				}
  6920  				if iNdEx >= l {
  6921  					return io.ErrUnexpectedEOF
  6922  				}
  6923  				b := dAtA[iNdEx]
  6924  				iNdEx++
  6925  				stringLen |= uint64(b&0x7F) << shift
  6926  				if b < 0x80 {
  6927  					break
  6928  				}
  6929  			}
  6930  			intStringLen := int(stringLen)
  6931  			if intStringLen < 0 {
  6932  				return ErrInvalidLengthProposal
  6933  			}
  6934  			postIndex := iNdEx + intStringLen
  6935  			if postIndex < 0 {
  6936  				return ErrInvalidLengthProposal
  6937  			}
  6938  			if postIndex > l {
  6939  				return io.ErrUnexpectedEOF
  6940  			}
  6941  			m.OracleBase = string(dAtA[iNdEx:postIndex])
  6942  			iNdEx = postIndex
  6943  		case 6:
  6944  			if wireType != 2 {
  6945  				return fmt.Errorf("proto: wrong wireType = %d for field OracleQuote", wireType)
  6946  			}
  6947  			var stringLen uint64
  6948  			for shift := uint(0); ; shift += 7 {
  6949  				if shift >= 64 {
  6950  					return ErrIntOverflowProposal
  6951  				}
  6952  				if iNdEx >= l {
  6953  					return io.ErrUnexpectedEOF
  6954  				}
  6955  				b := dAtA[iNdEx]
  6956  				iNdEx++
  6957  				stringLen |= uint64(b&0x7F) << shift
  6958  				if b < 0x80 {
  6959  					break
  6960  				}
  6961  			}
  6962  			intStringLen := int(stringLen)
  6963  			if intStringLen < 0 {
  6964  				return ErrInvalidLengthProposal
  6965  			}
  6966  			postIndex := iNdEx + intStringLen
  6967  			if postIndex < 0 {
  6968  				return ErrInvalidLengthProposal
  6969  			}
  6970  			if postIndex > l {
  6971  				return io.ErrUnexpectedEOF
  6972  			}
  6973  			m.OracleQuote = string(dAtA[iNdEx:postIndex])
  6974  			iNdEx = postIndex
  6975  		case 7:
  6976  			if wireType != 0 {
  6977  				return fmt.Errorf("proto: wrong wireType = %d for field OracleScaleFactor", wireType)
  6978  			}
  6979  			m.OracleScaleFactor = 0
  6980  			for shift := uint(0); ; shift += 7 {
  6981  				if shift >= 64 {
  6982  					return ErrIntOverflowProposal
  6983  				}
  6984  				if iNdEx >= l {
  6985  					return io.ErrUnexpectedEOF
  6986  				}
  6987  				b := dAtA[iNdEx]
  6988  				iNdEx++
  6989  				m.OracleScaleFactor |= uint32(b&0x7F) << shift
  6990  				if b < 0x80 {
  6991  					break
  6992  				}
  6993  			}
  6994  		case 8:
  6995  			if wireType != 0 {
  6996  				return fmt.Errorf("proto: wrong wireType = %d for field OracleType", wireType)
  6997  			}
  6998  			m.OracleType = 0
  6999  			for shift := uint(0); ; shift += 7 {
  7000  				if shift >= 64 {
  7001  					return ErrIntOverflowProposal
  7002  				}
  7003  				if iNdEx >= l {
  7004  					return io.ErrUnexpectedEOF
  7005  				}
  7006  				b := dAtA[iNdEx]
  7007  				iNdEx++
  7008  				m.OracleType |= types.OracleType(b&0x7F) << shift
  7009  				if b < 0x80 {
  7010  					break
  7011  				}
  7012  			}
  7013  		case 9:
  7014  			if wireType != 0 {
  7015  				return fmt.Errorf("proto: wrong wireType = %d for field Expiry", wireType)
  7016  			}
  7017  			m.Expiry = 0
  7018  			for shift := uint(0); ; shift += 7 {
  7019  				if shift >= 64 {
  7020  					return ErrIntOverflowProposal
  7021  				}
  7022  				if iNdEx >= l {
  7023  					return io.ErrUnexpectedEOF
  7024  				}
  7025  				b := dAtA[iNdEx]
  7026  				iNdEx++
  7027  				m.Expiry |= int64(b&0x7F) << shift
  7028  				if b < 0x80 {
  7029  					break
  7030  				}
  7031  			}
  7032  		case 10:
  7033  			if wireType != 2 {
  7034  				return fmt.Errorf("proto: wrong wireType = %d for field InitialMarginRatio", wireType)
  7035  			}
  7036  			var stringLen uint64
  7037  			for shift := uint(0); ; shift += 7 {
  7038  				if shift >= 64 {
  7039  					return ErrIntOverflowProposal
  7040  				}
  7041  				if iNdEx >= l {
  7042  					return io.ErrUnexpectedEOF
  7043  				}
  7044  				b := dAtA[iNdEx]
  7045  				iNdEx++
  7046  				stringLen |= uint64(b&0x7F) << shift
  7047  				if b < 0x80 {
  7048  					break
  7049  				}
  7050  			}
  7051  			intStringLen := int(stringLen)
  7052  			if intStringLen < 0 {
  7053  				return ErrInvalidLengthProposal
  7054  			}
  7055  			postIndex := iNdEx + intStringLen
  7056  			if postIndex < 0 {
  7057  				return ErrInvalidLengthProposal
  7058  			}
  7059  			if postIndex > l {
  7060  				return io.ErrUnexpectedEOF
  7061  			}
  7062  			if err := m.InitialMarginRatio.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7063  				return err
  7064  			}
  7065  			iNdEx = postIndex
  7066  		case 11:
  7067  			if wireType != 2 {
  7068  				return fmt.Errorf("proto: wrong wireType = %d for field MaintenanceMarginRatio", wireType)
  7069  			}
  7070  			var stringLen uint64
  7071  			for shift := uint(0); ; shift += 7 {
  7072  				if shift >= 64 {
  7073  					return ErrIntOverflowProposal
  7074  				}
  7075  				if iNdEx >= l {
  7076  					return io.ErrUnexpectedEOF
  7077  				}
  7078  				b := dAtA[iNdEx]
  7079  				iNdEx++
  7080  				stringLen |= uint64(b&0x7F) << shift
  7081  				if b < 0x80 {
  7082  					break
  7083  				}
  7084  			}
  7085  			intStringLen := int(stringLen)
  7086  			if intStringLen < 0 {
  7087  				return ErrInvalidLengthProposal
  7088  			}
  7089  			postIndex := iNdEx + intStringLen
  7090  			if postIndex < 0 {
  7091  				return ErrInvalidLengthProposal
  7092  			}
  7093  			if postIndex > l {
  7094  				return io.ErrUnexpectedEOF
  7095  			}
  7096  			if err := m.MaintenanceMarginRatio.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7097  				return err
  7098  			}
  7099  			iNdEx = postIndex
  7100  		case 12:
  7101  			if wireType != 2 {
  7102  				return fmt.Errorf("proto: wrong wireType = %d for field MakerFeeRate", wireType)
  7103  			}
  7104  			var stringLen uint64
  7105  			for shift := uint(0); ; shift += 7 {
  7106  				if shift >= 64 {
  7107  					return ErrIntOverflowProposal
  7108  				}
  7109  				if iNdEx >= l {
  7110  					return io.ErrUnexpectedEOF
  7111  				}
  7112  				b := dAtA[iNdEx]
  7113  				iNdEx++
  7114  				stringLen |= uint64(b&0x7F) << shift
  7115  				if b < 0x80 {
  7116  					break
  7117  				}
  7118  			}
  7119  			intStringLen := int(stringLen)
  7120  			if intStringLen < 0 {
  7121  				return ErrInvalidLengthProposal
  7122  			}
  7123  			postIndex := iNdEx + intStringLen
  7124  			if postIndex < 0 {
  7125  				return ErrInvalidLengthProposal
  7126  			}
  7127  			if postIndex > l {
  7128  				return io.ErrUnexpectedEOF
  7129  			}
  7130  			if err := m.MakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7131  				return err
  7132  			}
  7133  			iNdEx = postIndex
  7134  		case 13:
  7135  			if wireType != 2 {
  7136  				return fmt.Errorf("proto: wrong wireType = %d for field TakerFeeRate", wireType)
  7137  			}
  7138  			var stringLen uint64
  7139  			for shift := uint(0); ; shift += 7 {
  7140  				if shift >= 64 {
  7141  					return ErrIntOverflowProposal
  7142  				}
  7143  				if iNdEx >= l {
  7144  					return io.ErrUnexpectedEOF
  7145  				}
  7146  				b := dAtA[iNdEx]
  7147  				iNdEx++
  7148  				stringLen |= uint64(b&0x7F) << shift
  7149  				if b < 0x80 {
  7150  					break
  7151  				}
  7152  			}
  7153  			intStringLen := int(stringLen)
  7154  			if intStringLen < 0 {
  7155  				return ErrInvalidLengthProposal
  7156  			}
  7157  			postIndex := iNdEx + intStringLen
  7158  			if postIndex < 0 {
  7159  				return ErrInvalidLengthProposal
  7160  			}
  7161  			if postIndex > l {
  7162  				return io.ErrUnexpectedEOF
  7163  			}
  7164  			if err := m.TakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7165  				return err
  7166  			}
  7167  			iNdEx = postIndex
  7168  		case 14:
  7169  			if wireType != 2 {
  7170  				return fmt.Errorf("proto: wrong wireType = %d for field MinPriceTickSize", wireType)
  7171  			}
  7172  			var stringLen uint64
  7173  			for shift := uint(0); ; shift += 7 {
  7174  				if shift >= 64 {
  7175  					return ErrIntOverflowProposal
  7176  				}
  7177  				if iNdEx >= l {
  7178  					return io.ErrUnexpectedEOF
  7179  				}
  7180  				b := dAtA[iNdEx]
  7181  				iNdEx++
  7182  				stringLen |= uint64(b&0x7F) << shift
  7183  				if b < 0x80 {
  7184  					break
  7185  				}
  7186  			}
  7187  			intStringLen := int(stringLen)
  7188  			if intStringLen < 0 {
  7189  				return ErrInvalidLengthProposal
  7190  			}
  7191  			postIndex := iNdEx + intStringLen
  7192  			if postIndex < 0 {
  7193  				return ErrInvalidLengthProposal
  7194  			}
  7195  			if postIndex > l {
  7196  				return io.ErrUnexpectedEOF
  7197  			}
  7198  			if err := m.MinPriceTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7199  				return err
  7200  			}
  7201  			iNdEx = postIndex
  7202  		case 15:
  7203  			if wireType != 2 {
  7204  				return fmt.Errorf("proto: wrong wireType = %d for field MinQuantityTickSize", wireType)
  7205  			}
  7206  			var stringLen uint64
  7207  			for shift := uint(0); ; shift += 7 {
  7208  				if shift >= 64 {
  7209  					return ErrIntOverflowProposal
  7210  				}
  7211  				if iNdEx >= l {
  7212  					return io.ErrUnexpectedEOF
  7213  				}
  7214  				b := dAtA[iNdEx]
  7215  				iNdEx++
  7216  				stringLen |= uint64(b&0x7F) << shift
  7217  				if b < 0x80 {
  7218  					break
  7219  				}
  7220  			}
  7221  			intStringLen := int(stringLen)
  7222  			if intStringLen < 0 {
  7223  				return ErrInvalidLengthProposal
  7224  			}
  7225  			postIndex := iNdEx + intStringLen
  7226  			if postIndex < 0 {
  7227  				return ErrInvalidLengthProposal
  7228  			}
  7229  			if postIndex > l {
  7230  				return io.ErrUnexpectedEOF
  7231  			}
  7232  			if err := m.MinQuantityTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7233  				return err
  7234  			}
  7235  			iNdEx = postIndex
  7236  		case 16:
  7237  			if wireType != 2 {
  7238  				return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType)
  7239  			}
  7240  			var stringLen uint64
  7241  			for shift := uint(0); ; shift += 7 {
  7242  				if shift >= 64 {
  7243  					return ErrIntOverflowProposal
  7244  				}
  7245  				if iNdEx >= l {
  7246  					return io.ErrUnexpectedEOF
  7247  				}
  7248  				b := dAtA[iNdEx]
  7249  				iNdEx++
  7250  				stringLen |= uint64(b&0x7F) << shift
  7251  				if b < 0x80 {
  7252  					break
  7253  				}
  7254  			}
  7255  			intStringLen := int(stringLen)
  7256  			if intStringLen < 0 {
  7257  				return ErrInvalidLengthProposal
  7258  			}
  7259  			postIndex := iNdEx + intStringLen
  7260  			if postIndex < 0 {
  7261  				return ErrInvalidLengthProposal
  7262  			}
  7263  			if postIndex > l {
  7264  				return io.ErrUnexpectedEOF
  7265  			}
  7266  			if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7267  				return err
  7268  			}
  7269  			iNdEx = postIndex
  7270  		case 17:
  7271  			if wireType != 2 {
  7272  				return fmt.Errorf("proto: wrong wireType = %d for field AdminInfo", wireType)
  7273  			}
  7274  			var msglen int
  7275  			for shift := uint(0); ; shift += 7 {
  7276  				if shift >= 64 {
  7277  					return ErrIntOverflowProposal
  7278  				}
  7279  				if iNdEx >= l {
  7280  					return io.ErrUnexpectedEOF
  7281  				}
  7282  				b := dAtA[iNdEx]
  7283  				iNdEx++
  7284  				msglen |= int(b&0x7F) << shift
  7285  				if b < 0x80 {
  7286  					break
  7287  				}
  7288  			}
  7289  			if msglen < 0 {
  7290  				return ErrInvalidLengthProposal
  7291  			}
  7292  			postIndex := iNdEx + msglen
  7293  			if postIndex < 0 {
  7294  				return ErrInvalidLengthProposal
  7295  			}
  7296  			if postIndex > l {
  7297  				return io.ErrUnexpectedEOF
  7298  			}
  7299  			if m.AdminInfo == nil {
  7300  				m.AdminInfo = &AdminInfo{}
  7301  			}
  7302  			if err := m.AdminInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7303  				return err
  7304  			}
  7305  			iNdEx = postIndex
  7306  		default:
  7307  			iNdEx = preIndex
  7308  			skippy, err := skipProposal(dAtA[iNdEx:])
  7309  			if err != nil {
  7310  				return err
  7311  			}
  7312  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7313  				return ErrInvalidLengthProposal
  7314  			}
  7315  			if (iNdEx + skippy) > l {
  7316  				return io.ErrUnexpectedEOF
  7317  			}
  7318  			iNdEx += skippy
  7319  		}
  7320  	}
  7321  
  7322  	if iNdEx > l {
  7323  		return io.ErrUnexpectedEOF
  7324  	}
  7325  	return nil
  7326  }
  7327  func (m *DerivativeMarketParamUpdateProposal) Unmarshal(dAtA []byte) error {
  7328  	l := len(dAtA)
  7329  	iNdEx := 0
  7330  	for iNdEx < l {
  7331  		preIndex := iNdEx
  7332  		var wire uint64
  7333  		for shift := uint(0); ; shift += 7 {
  7334  			if shift >= 64 {
  7335  				return ErrIntOverflowProposal
  7336  			}
  7337  			if iNdEx >= l {
  7338  				return io.ErrUnexpectedEOF
  7339  			}
  7340  			b := dAtA[iNdEx]
  7341  			iNdEx++
  7342  			wire |= uint64(b&0x7F) << shift
  7343  			if b < 0x80 {
  7344  				break
  7345  			}
  7346  		}
  7347  		fieldNum := int32(wire >> 3)
  7348  		wireType := int(wire & 0x7)
  7349  		if wireType == 4 {
  7350  			return fmt.Errorf("proto: DerivativeMarketParamUpdateProposal: wiretype end group for non-group")
  7351  		}
  7352  		if fieldNum <= 0 {
  7353  			return fmt.Errorf("proto: DerivativeMarketParamUpdateProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  7354  		}
  7355  		switch fieldNum {
  7356  		case 1:
  7357  			if wireType != 2 {
  7358  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  7359  			}
  7360  			var stringLen uint64
  7361  			for shift := uint(0); ; shift += 7 {
  7362  				if shift >= 64 {
  7363  					return ErrIntOverflowProposal
  7364  				}
  7365  				if iNdEx >= l {
  7366  					return io.ErrUnexpectedEOF
  7367  				}
  7368  				b := dAtA[iNdEx]
  7369  				iNdEx++
  7370  				stringLen |= uint64(b&0x7F) << shift
  7371  				if b < 0x80 {
  7372  					break
  7373  				}
  7374  			}
  7375  			intStringLen := int(stringLen)
  7376  			if intStringLen < 0 {
  7377  				return ErrInvalidLengthProposal
  7378  			}
  7379  			postIndex := iNdEx + intStringLen
  7380  			if postIndex < 0 {
  7381  				return ErrInvalidLengthProposal
  7382  			}
  7383  			if postIndex > l {
  7384  				return io.ErrUnexpectedEOF
  7385  			}
  7386  			m.Title = string(dAtA[iNdEx:postIndex])
  7387  			iNdEx = postIndex
  7388  		case 2:
  7389  			if wireType != 2 {
  7390  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  7391  			}
  7392  			var stringLen uint64
  7393  			for shift := uint(0); ; shift += 7 {
  7394  				if shift >= 64 {
  7395  					return ErrIntOverflowProposal
  7396  				}
  7397  				if iNdEx >= l {
  7398  					return io.ErrUnexpectedEOF
  7399  				}
  7400  				b := dAtA[iNdEx]
  7401  				iNdEx++
  7402  				stringLen |= uint64(b&0x7F) << shift
  7403  				if b < 0x80 {
  7404  					break
  7405  				}
  7406  			}
  7407  			intStringLen := int(stringLen)
  7408  			if intStringLen < 0 {
  7409  				return ErrInvalidLengthProposal
  7410  			}
  7411  			postIndex := iNdEx + intStringLen
  7412  			if postIndex < 0 {
  7413  				return ErrInvalidLengthProposal
  7414  			}
  7415  			if postIndex > l {
  7416  				return io.ErrUnexpectedEOF
  7417  			}
  7418  			m.Description = string(dAtA[iNdEx:postIndex])
  7419  			iNdEx = postIndex
  7420  		case 3:
  7421  			if wireType != 2 {
  7422  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  7423  			}
  7424  			var stringLen uint64
  7425  			for shift := uint(0); ; shift += 7 {
  7426  				if shift >= 64 {
  7427  					return ErrIntOverflowProposal
  7428  				}
  7429  				if iNdEx >= l {
  7430  					return io.ErrUnexpectedEOF
  7431  				}
  7432  				b := dAtA[iNdEx]
  7433  				iNdEx++
  7434  				stringLen |= uint64(b&0x7F) << shift
  7435  				if b < 0x80 {
  7436  					break
  7437  				}
  7438  			}
  7439  			intStringLen := int(stringLen)
  7440  			if intStringLen < 0 {
  7441  				return ErrInvalidLengthProposal
  7442  			}
  7443  			postIndex := iNdEx + intStringLen
  7444  			if postIndex < 0 {
  7445  				return ErrInvalidLengthProposal
  7446  			}
  7447  			if postIndex > l {
  7448  				return io.ErrUnexpectedEOF
  7449  			}
  7450  			m.MarketId = string(dAtA[iNdEx:postIndex])
  7451  			iNdEx = postIndex
  7452  		case 4:
  7453  			if wireType != 2 {
  7454  				return fmt.Errorf("proto: wrong wireType = %d for field InitialMarginRatio", wireType)
  7455  			}
  7456  			var stringLen uint64
  7457  			for shift := uint(0); ; shift += 7 {
  7458  				if shift >= 64 {
  7459  					return ErrIntOverflowProposal
  7460  				}
  7461  				if iNdEx >= l {
  7462  					return io.ErrUnexpectedEOF
  7463  				}
  7464  				b := dAtA[iNdEx]
  7465  				iNdEx++
  7466  				stringLen |= uint64(b&0x7F) << shift
  7467  				if b < 0x80 {
  7468  					break
  7469  				}
  7470  			}
  7471  			intStringLen := int(stringLen)
  7472  			if intStringLen < 0 {
  7473  				return ErrInvalidLengthProposal
  7474  			}
  7475  			postIndex := iNdEx + intStringLen
  7476  			if postIndex < 0 {
  7477  				return ErrInvalidLengthProposal
  7478  			}
  7479  			if postIndex > l {
  7480  				return io.ErrUnexpectedEOF
  7481  			}
  7482  			var v cosmossdk_io_math.LegacyDec
  7483  			m.InitialMarginRatio = &v
  7484  			if err := m.InitialMarginRatio.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7485  				return err
  7486  			}
  7487  			iNdEx = postIndex
  7488  		case 5:
  7489  			if wireType != 2 {
  7490  				return fmt.Errorf("proto: wrong wireType = %d for field MaintenanceMarginRatio", wireType)
  7491  			}
  7492  			var stringLen uint64
  7493  			for shift := uint(0); ; shift += 7 {
  7494  				if shift >= 64 {
  7495  					return ErrIntOverflowProposal
  7496  				}
  7497  				if iNdEx >= l {
  7498  					return io.ErrUnexpectedEOF
  7499  				}
  7500  				b := dAtA[iNdEx]
  7501  				iNdEx++
  7502  				stringLen |= uint64(b&0x7F) << shift
  7503  				if b < 0x80 {
  7504  					break
  7505  				}
  7506  			}
  7507  			intStringLen := int(stringLen)
  7508  			if intStringLen < 0 {
  7509  				return ErrInvalidLengthProposal
  7510  			}
  7511  			postIndex := iNdEx + intStringLen
  7512  			if postIndex < 0 {
  7513  				return ErrInvalidLengthProposal
  7514  			}
  7515  			if postIndex > l {
  7516  				return io.ErrUnexpectedEOF
  7517  			}
  7518  			var v cosmossdk_io_math.LegacyDec
  7519  			m.MaintenanceMarginRatio = &v
  7520  			if err := m.MaintenanceMarginRatio.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7521  				return err
  7522  			}
  7523  			iNdEx = postIndex
  7524  		case 6:
  7525  			if wireType != 2 {
  7526  				return fmt.Errorf("proto: wrong wireType = %d for field MakerFeeRate", wireType)
  7527  			}
  7528  			var stringLen uint64
  7529  			for shift := uint(0); ; shift += 7 {
  7530  				if shift >= 64 {
  7531  					return ErrIntOverflowProposal
  7532  				}
  7533  				if iNdEx >= l {
  7534  					return io.ErrUnexpectedEOF
  7535  				}
  7536  				b := dAtA[iNdEx]
  7537  				iNdEx++
  7538  				stringLen |= uint64(b&0x7F) << shift
  7539  				if b < 0x80 {
  7540  					break
  7541  				}
  7542  			}
  7543  			intStringLen := int(stringLen)
  7544  			if intStringLen < 0 {
  7545  				return ErrInvalidLengthProposal
  7546  			}
  7547  			postIndex := iNdEx + intStringLen
  7548  			if postIndex < 0 {
  7549  				return ErrInvalidLengthProposal
  7550  			}
  7551  			if postIndex > l {
  7552  				return io.ErrUnexpectedEOF
  7553  			}
  7554  			var v cosmossdk_io_math.LegacyDec
  7555  			m.MakerFeeRate = &v
  7556  			if err := m.MakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7557  				return err
  7558  			}
  7559  			iNdEx = postIndex
  7560  		case 7:
  7561  			if wireType != 2 {
  7562  				return fmt.Errorf("proto: wrong wireType = %d for field TakerFeeRate", wireType)
  7563  			}
  7564  			var stringLen uint64
  7565  			for shift := uint(0); ; shift += 7 {
  7566  				if shift >= 64 {
  7567  					return ErrIntOverflowProposal
  7568  				}
  7569  				if iNdEx >= l {
  7570  					return io.ErrUnexpectedEOF
  7571  				}
  7572  				b := dAtA[iNdEx]
  7573  				iNdEx++
  7574  				stringLen |= uint64(b&0x7F) << shift
  7575  				if b < 0x80 {
  7576  					break
  7577  				}
  7578  			}
  7579  			intStringLen := int(stringLen)
  7580  			if intStringLen < 0 {
  7581  				return ErrInvalidLengthProposal
  7582  			}
  7583  			postIndex := iNdEx + intStringLen
  7584  			if postIndex < 0 {
  7585  				return ErrInvalidLengthProposal
  7586  			}
  7587  			if postIndex > l {
  7588  				return io.ErrUnexpectedEOF
  7589  			}
  7590  			var v cosmossdk_io_math.LegacyDec
  7591  			m.TakerFeeRate = &v
  7592  			if err := m.TakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7593  				return err
  7594  			}
  7595  			iNdEx = postIndex
  7596  		case 8:
  7597  			if wireType != 2 {
  7598  				return fmt.Errorf("proto: wrong wireType = %d for field RelayerFeeShareRate", wireType)
  7599  			}
  7600  			var stringLen uint64
  7601  			for shift := uint(0); ; shift += 7 {
  7602  				if shift >= 64 {
  7603  					return ErrIntOverflowProposal
  7604  				}
  7605  				if iNdEx >= l {
  7606  					return io.ErrUnexpectedEOF
  7607  				}
  7608  				b := dAtA[iNdEx]
  7609  				iNdEx++
  7610  				stringLen |= uint64(b&0x7F) << shift
  7611  				if b < 0x80 {
  7612  					break
  7613  				}
  7614  			}
  7615  			intStringLen := int(stringLen)
  7616  			if intStringLen < 0 {
  7617  				return ErrInvalidLengthProposal
  7618  			}
  7619  			postIndex := iNdEx + intStringLen
  7620  			if postIndex < 0 {
  7621  				return ErrInvalidLengthProposal
  7622  			}
  7623  			if postIndex > l {
  7624  				return io.ErrUnexpectedEOF
  7625  			}
  7626  			var v cosmossdk_io_math.LegacyDec
  7627  			m.RelayerFeeShareRate = &v
  7628  			if err := m.RelayerFeeShareRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7629  				return err
  7630  			}
  7631  			iNdEx = postIndex
  7632  		case 9:
  7633  			if wireType != 2 {
  7634  				return fmt.Errorf("proto: wrong wireType = %d for field MinPriceTickSize", wireType)
  7635  			}
  7636  			var stringLen uint64
  7637  			for shift := uint(0); ; shift += 7 {
  7638  				if shift >= 64 {
  7639  					return ErrIntOverflowProposal
  7640  				}
  7641  				if iNdEx >= l {
  7642  					return io.ErrUnexpectedEOF
  7643  				}
  7644  				b := dAtA[iNdEx]
  7645  				iNdEx++
  7646  				stringLen |= uint64(b&0x7F) << shift
  7647  				if b < 0x80 {
  7648  					break
  7649  				}
  7650  			}
  7651  			intStringLen := int(stringLen)
  7652  			if intStringLen < 0 {
  7653  				return ErrInvalidLengthProposal
  7654  			}
  7655  			postIndex := iNdEx + intStringLen
  7656  			if postIndex < 0 {
  7657  				return ErrInvalidLengthProposal
  7658  			}
  7659  			if postIndex > l {
  7660  				return io.ErrUnexpectedEOF
  7661  			}
  7662  			var v cosmossdk_io_math.LegacyDec
  7663  			m.MinPriceTickSize = &v
  7664  			if err := m.MinPriceTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7665  				return err
  7666  			}
  7667  			iNdEx = postIndex
  7668  		case 10:
  7669  			if wireType != 2 {
  7670  				return fmt.Errorf("proto: wrong wireType = %d for field MinQuantityTickSize", wireType)
  7671  			}
  7672  			var stringLen uint64
  7673  			for shift := uint(0); ; shift += 7 {
  7674  				if shift >= 64 {
  7675  					return ErrIntOverflowProposal
  7676  				}
  7677  				if iNdEx >= l {
  7678  					return io.ErrUnexpectedEOF
  7679  				}
  7680  				b := dAtA[iNdEx]
  7681  				iNdEx++
  7682  				stringLen |= uint64(b&0x7F) << shift
  7683  				if b < 0x80 {
  7684  					break
  7685  				}
  7686  			}
  7687  			intStringLen := int(stringLen)
  7688  			if intStringLen < 0 {
  7689  				return ErrInvalidLengthProposal
  7690  			}
  7691  			postIndex := iNdEx + intStringLen
  7692  			if postIndex < 0 {
  7693  				return ErrInvalidLengthProposal
  7694  			}
  7695  			if postIndex > l {
  7696  				return io.ErrUnexpectedEOF
  7697  			}
  7698  			var v cosmossdk_io_math.LegacyDec
  7699  			m.MinQuantityTickSize = &v
  7700  			if err := m.MinQuantityTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7701  				return err
  7702  			}
  7703  			iNdEx = postIndex
  7704  		case 11:
  7705  			if wireType != 2 {
  7706  				return fmt.Errorf("proto: wrong wireType = %d for field HourlyInterestRate", wireType)
  7707  			}
  7708  			var stringLen uint64
  7709  			for shift := uint(0); ; shift += 7 {
  7710  				if shift >= 64 {
  7711  					return ErrIntOverflowProposal
  7712  				}
  7713  				if iNdEx >= l {
  7714  					return io.ErrUnexpectedEOF
  7715  				}
  7716  				b := dAtA[iNdEx]
  7717  				iNdEx++
  7718  				stringLen |= uint64(b&0x7F) << shift
  7719  				if b < 0x80 {
  7720  					break
  7721  				}
  7722  			}
  7723  			intStringLen := int(stringLen)
  7724  			if intStringLen < 0 {
  7725  				return ErrInvalidLengthProposal
  7726  			}
  7727  			postIndex := iNdEx + intStringLen
  7728  			if postIndex < 0 {
  7729  				return ErrInvalidLengthProposal
  7730  			}
  7731  			if postIndex > l {
  7732  				return io.ErrUnexpectedEOF
  7733  			}
  7734  			var v cosmossdk_io_math.LegacyDec
  7735  			m.HourlyInterestRate = &v
  7736  			if err := m.HourlyInterestRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7737  				return err
  7738  			}
  7739  			iNdEx = postIndex
  7740  		case 12:
  7741  			if wireType != 2 {
  7742  				return fmt.Errorf("proto: wrong wireType = %d for field HourlyFundingRateCap", wireType)
  7743  			}
  7744  			var stringLen uint64
  7745  			for shift := uint(0); ; shift += 7 {
  7746  				if shift >= 64 {
  7747  					return ErrIntOverflowProposal
  7748  				}
  7749  				if iNdEx >= l {
  7750  					return io.ErrUnexpectedEOF
  7751  				}
  7752  				b := dAtA[iNdEx]
  7753  				iNdEx++
  7754  				stringLen |= uint64(b&0x7F) << shift
  7755  				if b < 0x80 {
  7756  					break
  7757  				}
  7758  			}
  7759  			intStringLen := int(stringLen)
  7760  			if intStringLen < 0 {
  7761  				return ErrInvalidLengthProposal
  7762  			}
  7763  			postIndex := iNdEx + intStringLen
  7764  			if postIndex < 0 {
  7765  				return ErrInvalidLengthProposal
  7766  			}
  7767  			if postIndex > l {
  7768  				return io.ErrUnexpectedEOF
  7769  			}
  7770  			var v cosmossdk_io_math.LegacyDec
  7771  			m.HourlyFundingRateCap = &v
  7772  			if err := m.HourlyFundingRateCap.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7773  				return err
  7774  			}
  7775  			iNdEx = postIndex
  7776  		case 13:
  7777  			if wireType != 0 {
  7778  				return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  7779  			}
  7780  			m.Status = 0
  7781  			for shift := uint(0); ; shift += 7 {
  7782  				if shift >= 64 {
  7783  					return ErrIntOverflowProposal
  7784  				}
  7785  				if iNdEx >= l {
  7786  					return io.ErrUnexpectedEOF
  7787  				}
  7788  				b := dAtA[iNdEx]
  7789  				iNdEx++
  7790  				m.Status |= MarketStatus(b&0x7F) << shift
  7791  				if b < 0x80 {
  7792  					break
  7793  				}
  7794  			}
  7795  		case 14:
  7796  			if wireType != 2 {
  7797  				return fmt.Errorf("proto: wrong wireType = %d for field OracleParams", wireType)
  7798  			}
  7799  			var msglen int
  7800  			for shift := uint(0); ; shift += 7 {
  7801  				if shift >= 64 {
  7802  					return ErrIntOverflowProposal
  7803  				}
  7804  				if iNdEx >= l {
  7805  					return io.ErrUnexpectedEOF
  7806  				}
  7807  				b := dAtA[iNdEx]
  7808  				iNdEx++
  7809  				msglen |= int(b&0x7F) << shift
  7810  				if b < 0x80 {
  7811  					break
  7812  				}
  7813  			}
  7814  			if msglen < 0 {
  7815  				return ErrInvalidLengthProposal
  7816  			}
  7817  			postIndex := iNdEx + msglen
  7818  			if postIndex < 0 {
  7819  				return ErrInvalidLengthProposal
  7820  			}
  7821  			if postIndex > l {
  7822  				return io.ErrUnexpectedEOF
  7823  			}
  7824  			if m.OracleParams == nil {
  7825  				m.OracleParams = &OracleParams{}
  7826  			}
  7827  			if err := m.OracleParams.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7828  				return err
  7829  			}
  7830  			iNdEx = postIndex
  7831  		case 15:
  7832  			if wireType != 2 {
  7833  				return fmt.Errorf("proto: wrong wireType = %d for field Ticker", wireType)
  7834  			}
  7835  			var stringLen uint64
  7836  			for shift := uint(0); ; shift += 7 {
  7837  				if shift >= 64 {
  7838  					return ErrIntOverflowProposal
  7839  				}
  7840  				if iNdEx >= l {
  7841  					return io.ErrUnexpectedEOF
  7842  				}
  7843  				b := dAtA[iNdEx]
  7844  				iNdEx++
  7845  				stringLen |= uint64(b&0x7F) << shift
  7846  				if b < 0x80 {
  7847  					break
  7848  				}
  7849  			}
  7850  			intStringLen := int(stringLen)
  7851  			if intStringLen < 0 {
  7852  				return ErrInvalidLengthProposal
  7853  			}
  7854  			postIndex := iNdEx + intStringLen
  7855  			if postIndex < 0 {
  7856  				return ErrInvalidLengthProposal
  7857  			}
  7858  			if postIndex > l {
  7859  				return io.ErrUnexpectedEOF
  7860  			}
  7861  			m.Ticker = string(dAtA[iNdEx:postIndex])
  7862  			iNdEx = postIndex
  7863  		case 16:
  7864  			if wireType != 2 {
  7865  				return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType)
  7866  			}
  7867  			var stringLen uint64
  7868  			for shift := uint(0); ; shift += 7 {
  7869  				if shift >= 64 {
  7870  					return ErrIntOverflowProposal
  7871  				}
  7872  				if iNdEx >= l {
  7873  					return io.ErrUnexpectedEOF
  7874  				}
  7875  				b := dAtA[iNdEx]
  7876  				iNdEx++
  7877  				stringLen |= uint64(b&0x7F) << shift
  7878  				if b < 0x80 {
  7879  					break
  7880  				}
  7881  			}
  7882  			intStringLen := int(stringLen)
  7883  			if intStringLen < 0 {
  7884  				return ErrInvalidLengthProposal
  7885  			}
  7886  			postIndex := iNdEx + intStringLen
  7887  			if postIndex < 0 {
  7888  				return ErrInvalidLengthProposal
  7889  			}
  7890  			if postIndex > l {
  7891  				return io.ErrUnexpectedEOF
  7892  			}
  7893  			var v cosmossdk_io_math.LegacyDec
  7894  			m.MinNotional = &v
  7895  			if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7896  				return err
  7897  			}
  7898  			iNdEx = postIndex
  7899  		case 17:
  7900  			if wireType != 2 {
  7901  				return fmt.Errorf("proto: wrong wireType = %d for field AdminInfo", wireType)
  7902  			}
  7903  			var msglen int
  7904  			for shift := uint(0); ; shift += 7 {
  7905  				if shift >= 64 {
  7906  					return ErrIntOverflowProposal
  7907  				}
  7908  				if iNdEx >= l {
  7909  					return io.ErrUnexpectedEOF
  7910  				}
  7911  				b := dAtA[iNdEx]
  7912  				iNdEx++
  7913  				msglen |= int(b&0x7F) << shift
  7914  				if b < 0x80 {
  7915  					break
  7916  				}
  7917  			}
  7918  			if msglen < 0 {
  7919  				return ErrInvalidLengthProposal
  7920  			}
  7921  			postIndex := iNdEx + msglen
  7922  			if postIndex < 0 {
  7923  				return ErrInvalidLengthProposal
  7924  			}
  7925  			if postIndex > l {
  7926  				return io.ErrUnexpectedEOF
  7927  			}
  7928  			if m.AdminInfo == nil {
  7929  				m.AdminInfo = &AdminInfo{}
  7930  			}
  7931  			if err := m.AdminInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7932  				return err
  7933  			}
  7934  			iNdEx = postIndex
  7935  		default:
  7936  			iNdEx = preIndex
  7937  			skippy, err := skipProposal(dAtA[iNdEx:])
  7938  			if err != nil {
  7939  				return err
  7940  			}
  7941  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  7942  				return ErrInvalidLengthProposal
  7943  			}
  7944  			if (iNdEx + skippy) > l {
  7945  				return io.ErrUnexpectedEOF
  7946  			}
  7947  			iNdEx += skippy
  7948  		}
  7949  	}
  7950  
  7951  	if iNdEx > l {
  7952  		return io.ErrUnexpectedEOF
  7953  	}
  7954  	return nil
  7955  }
  7956  func (m *AdminInfo) Unmarshal(dAtA []byte) error {
  7957  	l := len(dAtA)
  7958  	iNdEx := 0
  7959  	for iNdEx < l {
  7960  		preIndex := iNdEx
  7961  		var wire uint64
  7962  		for shift := uint(0); ; shift += 7 {
  7963  			if shift >= 64 {
  7964  				return ErrIntOverflowProposal
  7965  			}
  7966  			if iNdEx >= l {
  7967  				return io.ErrUnexpectedEOF
  7968  			}
  7969  			b := dAtA[iNdEx]
  7970  			iNdEx++
  7971  			wire |= uint64(b&0x7F) << shift
  7972  			if b < 0x80 {
  7973  				break
  7974  			}
  7975  		}
  7976  		fieldNum := int32(wire >> 3)
  7977  		wireType := int(wire & 0x7)
  7978  		if wireType == 4 {
  7979  			return fmt.Errorf("proto: AdminInfo: wiretype end group for non-group")
  7980  		}
  7981  		if fieldNum <= 0 {
  7982  			return fmt.Errorf("proto: AdminInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  7983  		}
  7984  		switch fieldNum {
  7985  		case 1:
  7986  			if wireType != 2 {
  7987  				return fmt.Errorf("proto: wrong wireType = %d for field Admin", wireType)
  7988  			}
  7989  			var stringLen uint64
  7990  			for shift := uint(0); ; shift += 7 {
  7991  				if shift >= 64 {
  7992  					return ErrIntOverflowProposal
  7993  				}
  7994  				if iNdEx >= l {
  7995  					return io.ErrUnexpectedEOF
  7996  				}
  7997  				b := dAtA[iNdEx]
  7998  				iNdEx++
  7999  				stringLen |= uint64(b&0x7F) << shift
  8000  				if b < 0x80 {
  8001  					break
  8002  				}
  8003  			}
  8004  			intStringLen := int(stringLen)
  8005  			if intStringLen < 0 {
  8006  				return ErrInvalidLengthProposal
  8007  			}
  8008  			postIndex := iNdEx + intStringLen
  8009  			if postIndex < 0 {
  8010  				return ErrInvalidLengthProposal
  8011  			}
  8012  			if postIndex > l {
  8013  				return io.ErrUnexpectedEOF
  8014  			}
  8015  			m.Admin = string(dAtA[iNdEx:postIndex])
  8016  			iNdEx = postIndex
  8017  		case 2:
  8018  			if wireType != 0 {
  8019  				return fmt.Errorf("proto: wrong wireType = %d for field AdminPermissions", wireType)
  8020  			}
  8021  			m.AdminPermissions = 0
  8022  			for shift := uint(0); ; shift += 7 {
  8023  				if shift >= 64 {
  8024  					return ErrIntOverflowProposal
  8025  				}
  8026  				if iNdEx >= l {
  8027  					return io.ErrUnexpectedEOF
  8028  				}
  8029  				b := dAtA[iNdEx]
  8030  				iNdEx++
  8031  				m.AdminPermissions |= uint32(b&0x7F) << shift
  8032  				if b < 0x80 {
  8033  					break
  8034  				}
  8035  			}
  8036  		default:
  8037  			iNdEx = preIndex
  8038  			skippy, err := skipProposal(dAtA[iNdEx:])
  8039  			if err != nil {
  8040  				return err
  8041  			}
  8042  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  8043  				return ErrInvalidLengthProposal
  8044  			}
  8045  			if (iNdEx + skippy) > l {
  8046  				return io.ErrUnexpectedEOF
  8047  			}
  8048  			iNdEx += skippy
  8049  		}
  8050  	}
  8051  
  8052  	if iNdEx > l {
  8053  		return io.ErrUnexpectedEOF
  8054  	}
  8055  	return nil
  8056  }
  8057  func (m *MarketForcedSettlementProposal) Unmarshal(dAtA []byte) error {
  8058  	l := len(dAtA)
  8059  	iNdEx := 0
  8060  	for iNdEx < l {
  8061  		preIndex := iNdEx
  8062  		var wire uint64
  8063  		for shift := uint(0); ; shift += 7 {
  8064  			if shift >= 64 {
  8065  				return ErrIntOverflowProposal
  8066  			}
  8067  			if iNdEx >= l {
  8068  				return io.ErrUnexpectedEOF
  8069  			}
  8070  			b := dAtA[iNdEx]
  8071  			iNdEx++
  8072  			wire |= uint64(b&0x7F) << shift
  8073  			if b < 0x80 {
  8074  				break
  8075  			}
  8076  		}
  8077  		fieldNum := int32(wire >> 3)
  8078  		wireType := int(wire & 0x7)
  8079  		if wireType == 4 {
  8080  			return fmt.Errorf("proto: MarketForcedSettlementProposal: wiretype end group for non-group")
  8081  		}
  8082  		if fieldNum <= 0 {
  8083  			return fmt.Errorf("proto: MarketForcedSettlementProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  8084  		}
  8085  		switch fieldNum {
  8086  		case 1:
  8087  			if wireType != 2 {
  8088  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  8089  			}
  8090  			var stringLen uint64
  8091  			for shift := uint(0); ; shift += 7 {
  8092  				if shift >= 64 {
  8093  					return ErrIntOverflowProposal
  8094  				}
  8095  				if iNdEx >= l {
  8096  					return io.ErrUnexpectedEOF
  8097  				}
  8098  				b := dAtA[iNdEx]
  8099  				iNdEx++
  8100  				stringLen |= uint64(b&0x7F) << shift
  8101  				if b < 0x80 {
  8102  					break
  8103  				}
  8104  			}
  8105  			intStringLen := int(stringLen)
  8106  			if intStringLen < 0 {
  8107  				return ErrInvalidLengthProposal
  8108  			}
  8109  			postIndex := iNdEx + intStringLen
  8110  			if postIndex < 0 {
  8111  				return ErrInvalidLengthProposal
  8112  			}
  8113  			if postIndex > l {
  8114  				return io.ErrUnexpectedEOF
  8115  			}
  8116  			m.Title = string(dAtA[iNdEx:postIndex])
  8117  			iNdEx = postIndex
  8118  		case 2:
  8119  			if wireType != 2 {
  8120  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  8121  			}
  8122  			var stringLen uint64
  8123  			for shift := uint(0); ; shift += 7 {
  8124  				if shift >= 64 {
  8125  					return ErrIntOverflowProposal
  8126  				}
  8127  				if iNdEx >= l {
  8128  					return io.ErrUnexpectedEOF
  8129  				}
  8130  				b := dAtA[iNdEx]
  8131  				iNdEx++
  8132  				stringLen |= uint64(b&0x7F) << shift
  8133  				if b < 0x80 {
  8134  					break
  8135  				}
  8136  			}
  8137  			intStringLen := int(stringLen)
  8138  			if intStringLen < 0 {
  8139  				return ErrInvalidLengthProposal
  8140  			}
  8141  			postIndex := iNdEx + intStringLen
  8142  			if postIndex < 0 {
  8143  				return ErrInvalidLengthProposal
  8144  			}
  8145  			if postIndex > l {
  8146  				return io.ErrUnexpectedEOF
  8147  			}
  8148  			m.Description = string(dAtA[iNdEx:postIndex])
  8149  			iNdEx = postIndex
  8150  		case 3:
  8151  			if wireType != 2 {
  8152  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  8153  			}
  8154  			var stringLen uint64
  8155  			for shift := uint(0); ; shift += 7 {
  8156  				if shift >= 64 {
  8157  					return ErrIntOverflowProposal
  8158  				}
  8159  				if iNdEx >= l {
  8160  					return io.ErrUnexpectedEOF
  8161  				}
  8162  				b := dAtA[iNdEx]
  8163  				iNdEx++
  8164  				stringLen |= uint64(b&0x7F) << shift
  8165  				if b < 0x80 {
  8166  					break
  8167  				}
  8168  			}
  8169  			intStringLen := int(stringLen)
  8170  			if intStringLen < 0 {
  8171  				return ErrInvalidLengthProposal
  8172  			}
  8173  			postIndex := iNdEx + intStringLen
  8174  			if postIndex < 0 {
  8175  				return ErrInvalidLengthProposal
  8176  			}
  8177  			if postIndex > l {
  8178  				return io.ErrUnexpectedEOF
  8179  			}
  8180  			m.MarketId = string(dAtA[iNdEx:postIndex])
  8181  			iNdEx = postIndex
  8182  		case 4:
  8183  			if wireType != 2 {
  8184  				return fmt.Errorf("proto: wrong wireType = %d for field SettlementPrice", wireType)
  8185  			}
  8186  			var stringLen uint64
  8187  			for shift := uint(0); ; shift += 7 {
  8188  				if shift >= 64 {
  8189  					return ErrIntOverflowProposal
  8190  				}
  8191  				if iNdEx >= l {
  8192  					return io.ErrUnexpectedEOF
  8193  				}
  8194  				b := dAtA[iNdEx]
  8195  				iNdEx++
  8196  				stringLen |= uint64(b&0x7F) << shift
  8197  				if b < 0x80 {
  8198  					break
  8199  				}
  8200  			}
  8201  			intStringLen := int(stringLen)
  8202  			if intStringLen < 0 {
  8203  				return ErrInvalidLengthProposal
  8204  			}
  8205  			postIndex := iNdEx + intStringLen
  8206  			if postIndex < 0 {
  8207  				return ErrInvalidLengthProposal
  8208  			}
  8209  			if postIndex > l {
  8210  				return io.ErrUnexpectedEOF
  8211  			}
  8212  			var v cosmossdk_io_math.LegacyDec
  8213  			m.SettlementPrice = &v
  8214  			if err := m.SettlementPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8215  				return err
  8216  			}
  8217  			iNdEx = postIndex
  8218  		default:
  8219  			iNdEx = preIndex
  8220  			skippy, err := skipProposal(dAtA[iNdEx:])
  8221  			if err != nil {
  8222  				return err
  8223  			}
  8224  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  8225  				return ErrInvalidLengthProposal
  8226  			}
  8227  			if (iNdEx + skippy) > l {
  8228  				return io.ErrUnexpectedEOF
  8229  			}
  8230  			iNdEx += skippy
  8231  		}
  8232  	}
  8233  
  8234  	if iNdEx > l {
  8235  		return io.ErrUnexpectedEOF
  8236  	}
  8237  	return nil
  8238  }
  8239  func (m *UpdateDenomDecimalsProposal) Unmarshal(dAtA []byte) error {
  8240  	l := len(dAtA)
  8241  	iNdEx := 0
  8242  	for iNdEx < l {
  8243  		preIndex := iNdEx
  8244  		var wire uint64
  8245  		for shift := uint(0); ; shift += 7 {
  8246  			if shift >= 64 {
  8247  				return ErrIntOverflowProposal
  8248  			}
  8249  			if iNdEx >= l {
  8250  				return io.ErrUnexpectedEOF
  8251  			}
  8252  			b := dAtA[iNdEx]
  8253  			iNdEx++
  8254  			wire |= uint64(b&0x7F) << shift
  8255  			if b < 0x80 {
  8256  				break
  8257  			}
  8258  		}
  8259  		fieldNum := int32(wire >> 3)
  8260  		wireType := int(wire & 0x7)
  8261  		if wireType == 4 {
  8262  			return fmt.Errorf("proto: UpdateDenomDecimalsProposal: wiretype end group for non-group")
  8263  		}
  8264  		if fieldNum <= 0 {
  8265  			return fmt.Errorf("proto: UpdateDenomDecimalsProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  8266  		}
  8267  		switch fieldNum {
  8268  		case 1:
  8269  			if wireType != 2 {
  8270  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  8271  			}
  8272  			var stringLen uint64
  8273  			for shift := uint(0); ; shift += 7 {
  8274  				if shift >= 64 {
  8275  					return ErrIntOverflowProposal
  8276  				}
  8277  				if iNdEx >= l {
  8278  					return io.ErrUnexpectedEOF
  8279  				}
  8280  				b := dAtA[iNdEx]
  8281  				iNdEx++
  8282  				stringLen |= uint64(b&0x7F) << shift
  8283  				if b < 0x80 {
  8284  					break
  8285  				}
  8286  			}
  8287  			intStringLen := int(stringLen)
  8288  			if intStringLen < 0 {
  8289  				return ErrInvalidLengthProposal
  8290  			}
  8291  			postIndex := iNdEx + intStringLen
  8292  			if postIndex < 0 {
  8293  				return ErrInvalidLengthProposal
  8294  			}
  8295  			if postIndex > l {
  8296  				return io.ErrUnexpectedEOF
  8297  			}
  8298  			m.Title = string(dAtA[iNdEx:postIndex])
  8299  			iNdEx = postIndex
  8300  		case 2:
  8301  			if wireType != 2 {
  8302  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  8303  			}
  8304  			var stringLen uint64
  8305  			for shift := uint(0); ; shift += 7 {
  8306  				if shift >= 64 {
  8307  					return ErrIntOverflowProposal
  8308  				}
  8309  				if iNdEx >= l {
  8310  					return io.ErrUnexpectedEOF
  8311  				}
  8312  				b := dAtA[iNdEx]
  8313  				iNdEx++
  8314  				stringLen |= uint64(b&0x7F) << shift
  8315  				if b < 0x80 {
  8316  					break
  8317  				}
  8318  			}
  8319  			intStringLen := int(stringLen)
  8320  			if intStringLen < 0 {
  8321  				return ErrInvalidLengthProposal
  8322  			}
  8323  			postIndex := iNdEx + intStringLen
  8324  			if postIndex < 0 {
  8325  				return ErrInvalidLengthProposal
  8326  			}
  8327  			if postIndex > l {
  8328  				return io.ErrUnexpectedEOF
  8329  			}
  8330  			m.Description = string(dAtA[iNdEx:postIndex])
  8331  			iNdEx = postIndex
  8332  		case 3:
  8333  			if wireType != 2 {
  8334  				return fmt.Errorf("proto: wrong wireType = %d for field DenomDecimals", wireType)
  8335  			}
  8336  			var msglen int
  8337  			for shift := uint(0); ; shift += 7 {
  8338  				if shift >= 64 {
  8339  					return ErrIntOverflowProposal
  8340  				}
  8341  				if iNdEx >= l {
  8342  					return io.ErrUnexpectedEOF
  8343  				}
  8344  				b := dAtA[iNdEx]
  8345  				iNdEx++
  8346  				msglen |= int(b&0x7F) << shift
  8347  				if b < 0x80 {
  8348  					break
  8349  				}
  8350  			}
  8351  			if msglen < 0 {
  8352  				return ErrInvalidLengthProposal
  8353  			}
  8354  			postIndex := iNdEx + msglen
  8355  			if postIndex < 0 {
  8356  				return ErrInvalidLengthProposal
  8357  			}
  8358  			if postIndex > l {
  8359  				return io.ErrUnexpectedEOF
  8360  			}
  8361  			m.DenomDecimals = append(m.DenomDecimals, &DenomDecimals{})
  8362  			if err := m.DenomDecimals[len(m.DenomDecimals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8363  				return err
  8364  			}
  8365  			iNdEx = postIndex
  8366  		default:
  8367  			iNdEx = preIndex
  8368  			skippy, err := skipProposal(dAtA[iNdEx:])
  8369  			if err != nil {
  8370  				return err
  8371  			}
  8372  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  8373  				return ErrInvalidLengthProposal
  8374  			}
  8375  			if (iNdEx + skippy) > l {
  8376  				return io.ErrUnexpectedEOF
  8377  			}
  8378  			iNdEx += skippy
  8379  		}
  8380  	}
  8381  
  8382  	if iNdEx > l {
  8383  		return io.ErrUnexpectedEOF
  8384  	}
  8385  	return nil
  8386  }
  8387  func (m *BinaryOptionsMarketParamUpdateProposal) Unmarshal(dAtA []byte) error {
  8388  	l := len(dAtA)
  8389  	iNdEx := 0
  8390  	for iNdEx < l {
  8391  		preIndex := iNdEx
  8392  		var wire uint64
  8393  		for shift := uint(0); ; shift += 7 {
  8394  			if shift >= 64 {
  8395  				return ErrIntOverflowProposal
  8396  			}
  8397  			if iNdEx >= l {
  8398  				return io.ErrUnexpectedEOF
  8399  			}
  8400  			b := dAtA[iNdEx]
  8401  			iNdEx++
  8402  			wire |= uint64(b&0x7F) << shift
  8403  			if b < 0x80 {
  8404  				break
  8405  			}
  8406  		}
  8407  		fieldNum := int32(wire >> 3)
  8408  		wireType := int(wire & 0x7)
  8409  		if wireType == 4 {
  8410  			return fmt.Errorf("proto: BinaryOptionsMarketParamUpdateProposal: wiretype end group for non-group")
  8411  		}
  8412  		if fieldNum <= 0 {
  8413  			return fmt.Errorf("proto: BinaryOptionsMarketParamUpdateProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  8414  		}
  8415  		switch fieldNum {
  8416  		case 1:
  8417  			if wireType != 2 {
  8418  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  8419  			}
  8420  			var stringLen uint64
  8421  			for shift := uint(0); ; shift += 7 {
  8422  				if shift >= 64 {
  8423  					return ErrIntOverflowProposal
  8424  				}
  8425  				if iNdEx >= l {
  8426  					return io.ErrUnexpectedEOF
  8427  				}
  8428  				b := dAtA[iNdEx]
  8429  				iNdEx++
  8430  				stringLen |= uint64(b&0x7F) << shift
  8431  				if b < 0x80 {
  8432  					break
  8433  				}
  8434  			}
  8435  			intStringLen := int(stringLen)
  8436  			if intStringLen < 0 {
  8437  				return ErrInvalidLengthProposal
  8438  			}
  8439  			postIndex := iNdEx + intStringLen
  8440  			if postIndex < 0 {
  8441  				return ErrInvalidLengthProposal
  8442  			}
  8443  			if postIndex > l {
  8444  				return io.ErrUnexpectedEOF
  8445  			}
  8446  			m.Title = string(dAtA[iNdEx:postIndex])
  8447  			iNdEx = postIndex
  8448  		case 2:
  8449  			if wireType != 2 {
  8450  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  8451  			}
  8452  			var stringLen uint64
  8453  			for shift := uint(0); ; shift += 7 {
  8454  				if shift >= 64 {
  8455  					return ErrIntOverflowProposal
  8456  				}
  8457  				if iNdEx >= l {
  8458  					return io.ErrUnexpectedEOF
  8459  				}
  8460  				b := dAtA[iNdEx]
  8461  				iNdEx++
  8462  				stringLen |= uint64(b&0x7F) << shift
  8463  				if b < 0x80 {
  8464  					break
  8465  				}
  8466  			}
  8467  			intStringLen := int(stringLen)
  8468  			if intStringLen < 0 {
  8469  				return ErrInvalidLengthProposal
  8470  			}
  8471  			postIndex := iNdEx + intStringLen
  8472  			if postIndex < 0 {
  8473  				return ErrInvalidLengthProposal
  8474  			}
  8475  			if postIndex > l {
  8476  				return io.ErrUnexpectedEOF
  8477  			}
  8478  			m.Description = string(dAtA[iNdEx:postIndex])
  8479  			iNdEx = postIndex
  8480  		case 3:
  8481  			if wireType != 2 {
  8482  				return fmt.Errorf("proto: wrong wireType = %d for field MarketId", wireType)
  8483  			}
  8484  			var stringLen uint64
  8485  			for shift := uint(0); ; shift += 7 {
  8486  				if shift >= 64 {
  8487  					return ErrIntOverflowProposal
  8488  				}
  8489  				if iNdEx >= l {
  8490  					return io.ErrUnexpectedEOF
  8491  				}
  8492  				b := dAtA[iNdEx]
  8493  				iNdEx++
  8494  				stringLen |= uint64(b&0x7F) << shift
  8495  				if b < 0x80 {
  8496  					break
  8497  				}
  8498  			}
  8499  			intStringLen := int(stringLen)
  8500  			if intStringLen < 0 {
  8501  				return ErrInvalidLengthProposal
  8502  			}
  8503  			postIndex := iNdEx + intStringLen
  8504  			if postIndex < 0 {
  8505  				return ErrInvalidLengthProposal
  8506  			}
  8507  			if postIndex > l {
  8508  				return io.ErrUnexpectedEOF
  8509  			}
  8510  			m.MarketId = string(dAtA[iNdEx:postIndex])
  8511  			iNdEx = postIndex
  8512  		case 4:
  8513  			if wireType != 2 {
  8514  				return fmt.Errorf("proto: wrong wireType = %d for field MakerFeeRate", wireType)
  8515  			}
  8516  			var stringLen uint64
  8517  			for shift := uint(0); ; shift += 7 {
  8518  				if shift >= 64 {
  8519  					return ErrIntOverflowProposal
  8520  				}
  8521  				if iNdEx >= l {
  8522  					return io.ErrUnexpectedEOF
  8523  				}
  8524  				b := dAtA[iNdEx]
  8525  				iNdEx++
  8526  				stringLen |= uint64(b&0x7F) << shift
  8527  				if b < 0x80 {
  8528  					break
  8529  				}
  8530  			}
  8531  			intStringLen := int(stringLen)
  8532  			if intStringLen < 0 {
  8533  				return ErrInvalidLengthProposal
  8534  			}
  8535  			postIndex := iNdEx + intStringLen
  8536  			if postIndex < 0 {
  8537  				return ErrInvalidLengthProposal
  8538  			}
  8539  			if postIndex > l {
  8540  				return io.ErrUnexpectedEOF
  8541  			}
  8542  			var v cosmossdk_io_math.LegacyDec
  8543  			m.MakerFeeRate = &v
  8544  			if err := m.MakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8545  				return err
  8546  			}
  8547  			iNdEx = postIndex
  8548  		case 5:
  8549  			if wireType != 2 {
  8550  				return fmt.Errorf("proto: wrong wireType = %d for field TakerFeeRate", wireType)
  8551  			}
  8552  			var stringLen uint64
  8553  			for shift := uint(0); ; shift += 7 {
  8554  				if shift >= 64 {
  8555  					return ErrIntOverflowProposal
  8556  				}
  8557  				if iNdEx >= l {
  8558  					return io.ErrUnexpectedEOF
  8559  				}
  8560  				b := dAtA[iNdEx]
  8561  				iNdEx++
  8562  				stringLen |= uint64(b&0x7F) << shift
  8563  				if b < 0x80 {
  8564  					break
  8565  				}
  8566  			}
  8567  			intStringLen := int(stringLen)
  8568  			if intStringLen < 0 {
  8569  				return ErrInvalidLengthProposal
  8570  			}
  8571  			postIndex := iNdEx + intStringLen
  8572  			if postIndex < 0 {
  8573  				return ErrInvalidLengthProposal
  8574  			}
  8575  			if postIndex > l {
  8576  				return io.ErrUnexpectedEOF
  8577  			}
  8578  			var v cosmossdk_io_math.LegacyDec
  8579  			m.TakerFeeRate = &v
  8580  			if err := m.TakerFeeRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8581  				return err
  8582  			}
  8583  			iNdEx = postIndex
  8584  		case 6:
  8585  			if wireType != 2 {
  8586  				return fmt.Errorf("proto: wrong wireType = %d for field RelayerFeeShareRate", wireType)
  8587  			}
  8588  			var stringLen uint64
  8589  			for shift := uint(0); ; shift += 7 {
  8590  				if shift >= 64 {
  8591  					return ErrIntOverflowProposal
  8592  				}
  8593  				if iNdEx >= l {
  8594  					return io.ErrUnexpectedEOF
  8595  				}
  8596  				b := dAtA[iNdEx]
  8597  				iNdEx++
  8598  				stringLen |= uint64(b&0x7F) << shift
  8599  				if b < 0x80 {
  8600  					break
  8601  				}
  8602  			}
  8603  			intStringLen := int(stringLen)
  8604  			if intStringLen < 0 {
  8605  				return ErrInvalidLengthProposal
  8606  			}
  8607  			postIndex := iNdEx + intStringLen
  8608  			if postIndex < 0 {
  8609  				return ErrInvalidLengthProposal
  8610  			}
  8611  			if postIndex > l {
  8612  				return io.ErrUnexpectedEOF
  8613  			}
  8614  			var v cosmossdk_io_math.LegacyDec
  8615  			m.RelayerFeeShareRate = &v
  8616  			if err := m.RelayerFeeShareRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8617  				return err
  8618  			}
  8619  			iNdEx = postIndex
  8620  		case 7:
  8621  			if wireType != 2 {
  8622  				return fmt.Errorf("proto: wrong wireType = %d for field MinPriceTickSize", wireType)
  8623  			}
  8624  			var stringLen uint64
  8625  			for shift := uint(0); ; shift += 7 {
  8626  				if shift >= 64 {
  8627  					return ErrIntOverflowProposal
  8628  				}
  8629  				if iNdEx >= l {
  8630  					return io.ErrUnexpectedEOF
  8631  				}
  8632  				b := dAtA[iNdEx]
  8633  				iNdEx++
  8634  				stringLen |= uint64(b&0x7F) << shift
  8635  				if b < 0x80 {
  8636  					break
  8637  				}
  8638  			}
  8639  			intStringLen := int(stringLen)
  8640  			if intStringLen < 0 {
  8641  				return ErrInvalidLengthProposal
  8642  			}
  8643  			postIndex := iNdEx + intStringLen
  8644  			if postIndex < 0 {
  8645  				return ErrInvalidLengthProposal
  8646  			}
  8647  			if postIndex > l {
  8648  				return io.ErrUnexpectedEOF
  8649  			}
  8650  			var v cosmossdk_io_math.LegacyDec
  8651  			m.MinPriceTickSize = &v
  8652  			if err := m.MinPriceTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8653  				return err
  8654  			}
  8655  			iNdEx = postIndex
  8656  		case 8:
  8657  			if wireType != 2 {
  8658  				return fmt.Errorf("proto: wrong wireType = %d for field MinQuantityTickSize", wireType)
  8659  			}
  8660  			var stringLen uint64
  8661  			for shift := uint(0); ; shift += 7 {
  8662  				if shift >= 64 {
  8663  					return ErrIntOverflowProposal
  8664  				}
  8665  				if iNdEx >= l {
  8666  					return io.ErrUnexpectedEOF
  8667  				}
  8668  				b := dAtA[iNdEx]
  8669  				iNdEx++
  8670  				stringLen |= uint64(b&0x7F) << shift
  8671  				if b < 0x80 {
  8672  					break
  8673  				}
  8674  			}
  8675  			intStringLen := int(stringLen)
  8676  			if intStringLen < 0 {
  8677  				return ErrInvalidLengthProposal
  8678  			}
  8679  			postIndex := iNdEx + intStringLen
  8680  			if postIndex < 0 {
  8681  				return ErrInvalidLengthProposal
  8682  			}
  8683  			if postIndex > l {
  8684  				return io.ErrUnexpectedEOF
  8685  			}
  8686  			var v cosmossdk_io_math.LegacyDec
  8687  			m.MinQuantityTickSize = &v
  8688  			if err := m.MinQuantityTickSize.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8689  				return err
  8690  			}
  8691  			iNdEx = postIndex
  8692  		case 9:
  8693  			if wireType != 0 {
  8694  				return fmt.Errorf("proto: wrong wireType = %d for field ExpirationTimestamp", wireType)
  8695  			}
  8696  			m.ExpirationTimestamp = 0
  8697  			for shift := uint(0); ; shift += 7 {
  8698  				if shift >= 64 {
  8699  					return ErrIntOverflowProposal
  8700  				}
  8701  				if iNdEx >= l {
  8702  					return io.ErrUnexpectedEOF
  8703  				}
  8704  				b := dAtA[iNdEx]
  8705  				iNdEx++
  8706  				m.ExpirationTimestamp |= int64(b&0x7F) << shift
  8707  				if b < 0x80 {
  8708  					break
  8709  				}
  8710  			}
  8711  		case 10:
  8712  			if wireType != 0 {
  8713  				return fmt.Errorf("proto: wrong wireType = %d for field SettlementTimestamp", wireType)
  8714  			}
  8715  			m.SettlementTimestamp = 0
  8716  			for shift := uint(0); ; shift += 7 {
  8717  				if shift >= 64 {
  8718  					return ErrIntOverflowProposal
  8719  				}
  8720  				if iNdEx >= l {
  8721  					return io.ErrUnexpectedEOF
  8722  				}
  8723  				b := dAtA[iNdEx]
  8724  				iNdEx++
  8725  				m.SettlementTimestamp |= int64(b&0x7F) << shift
  8726  				if b < 0x80 {
  8727  					break
  8728  				}
  8729  			}
  8730  		case 11:
  8731  			if wireType != 2 {
  8732  				return fmt.Errorf("proto: wrong wireType = %d for field SettlementPrice", wireType)
  8733  			}
  8734  			var stringLen uint64
  8735  			for shift := uint(0); ; shift += 7 {
  8736  				if shift >= 64 {
  8737  					return ErrIntOverflowProposal
  8738  				}
  8739  				if iNdEx >= l {
  8740  					return io.ErrUnexpectedEOF
  8741  				}
  8742  				b := dAtA[iNdEx]
  8743  				iNdEx++
  8744  				stringLen |= uint64(b&0x7F) << shift
  8745  				if b < 0x80 {
  8746  					break
  8747  				}
  8748  			}
  8749  			intStringLen := int(stringLen)
  8750  			if intStringLen < 0 {
  8751  				return ErrInvalidLengthProposal
  8752  			}
  8753  			postIndex := iNdEx + intStringLen
  8754  			if postIndex < 0 {
  8755  				return ErrInvalidLengthProposal
  8756  			}
  8757  			if postIndex > l {
  8758  				return io.ErrUnexpectedEOF
  8759  			}
  8760  			var v cosmossdk_io_math.LegacyDec
  8761  			m.SettlementPrice = &v
  8762  			if err := m.SettlementPrice.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8763  				return err
  8764  			}
  8765  			iNdEx = postIndex
  8766  		case 12:
  8767  			if wireType != 2 {
  8768  				return fmt.Errorf("proto: wrong wireType = %d for field Admin", wireType)
  8769  			}
  8770  			var stringLen uint64
  8771  			for shift := uint(0); ; shift += 7 {
  8772  				if shift >= 64 {
  8773  					return ErrIntOverflowProposal
  8774  				}
  8775  				if iNdEx >= l {
  8776  					return io.ErrUnexpectedEOF
  8777  				}
  8778  				b := dAtA[iNdEx]
  8779  				iNdEx++
  8780  				stringLen |= uint64(b&0x7F) << shift
  8781  				if b < 0x80 {
  8782  					break
  8783  				}
  8784  			}
  8785  			intStringLen := int(stringLen)
  8786  			if intStringLen < 0 {
  8787  				return ErrInvalidLengthProposal
  8788  			}
  8789  			postIndex := iNdEx + intStringLen
  8790  			if postIndex < 0 {
  8791  				return ErrInvalidLengthProposal
  8792  			}
  8793  			if postIndex > l {
  8794  				return io.ErrUnexpectedEOF
  8795  			}
  8796  			m.Admin = string(dAtA[iNdEx:postIndex])
  8797  			iNdEx = postIndex
  8798  		case 13:
  8799  			if wireType != 0 {
  8800  				return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  8801  			}
  8802  			m.Status = 0
  8803  			for shift := uint(0); ; shift += 7 {
  8804  				if shift >= 64 {
  8805  					return ErrIntOverflowProposal
  8806  				}
  8807  				if iNdEx >= l {
  8808  					return io.ErrUnexpectedEOF
  8809  				}
  8810  				b := dAtA[iNdEx]
  8811  				iNdEx++
  8812  				m.Status |= MarketStatus(b&0x7F) << shift
  8813  				if b < 0x80 {
  8814  					break
  8815  				}
  8816  			}
  8817  		case 14:
  8818  			if wireType != 2 {
  8819  				return fmt.Errorf("proto: wrong wireType = %d for field OracleParams", wireType)
  8820  			}
  8821  			var msglen int
  8822  			for shift := uint(0); ; shift += 7 {
  8823  				if shift >= 64 {
  8824  					return ErrIntOverflowProposal
  8825  				}
  8826  				if iNdEx >= l {
  8827  					return io.ErrUnexpectedEOF
  8828  				}
  8829  				b := dAtA[iNdEx]
  8830  				iNdEx++
  8831  				msglen |= int(b&0x7F) << shift
  8832  				if b < 0x80 {
  8833  					break
  8834  				}
  8835  			}
  8836  			if msglen < 0 {
  8837  				return ErrInvalidLengthProposal
  8838  			}
  8839  			postIndex := iNdEx + msglen
  8840  			if postIndex < 0 {
  8841  				return ErrInvalidLengthProposal
  8842  			}
  8843  			if postIndex > l {
  8844  				return io.ErrUnexpectedEOF
  8845  			}
  8846  			if m.OracleParams == nil {
  8847  				m.OracleParams = &ProviderOracleParams{}
  8848  			}
  8849  			if err := m.OracleParams.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8850  				return err
  8851  			}
  8852  			iNdEx = postIndex
  8853  		case 15:
  8854  			if wireType != 2 {
  8855  				return fmt.Errorf("proto: wrong wireType = %d for field Ticker", wireType)
  8856  			}
  8857  			var stringLen uint64
  8858  			for shift := uint(0); ; shift += 7 {
  8859  				if shift >= 64 {
  8860  					return ErrIntOverflowProposal
  8861  				}
  8862  				if iNdEx >= l {
  8863  					return io.ErrUnexpectedEOF
  8864  				}
  8865  				b := dAtA[iNdEx]
  8866  				iNdEx++
  8867  				stringLen |= uint64(b&0x7F) << shift
  8868  				if b < 0x80 {
  8869  					break
  8870  				}
  8871  			}
  8872  			intStringLen := int(stringLen)
  8873  			if intStringLen < 0 {
  8874  				return ErrInvalidLengthProposal
  8875  			}
  8876  			postIndex := iNdEx + intStringLen
  8877  			if postIndex < 0 {
  8878  				return ErrInvalidLengthProposal
  8879  			}
  8880  			if postIndex > l {
  8881  				return io.ErrUnexpectedEOF
  8882  			}
  8883  			m.Ticker = string(dAtA[iNdEx:postIndex])
  8884  			iNdEx = postIndex
  8885  		case 16:
  8886  			if wireType != 2 {
  8887  				return fmt.Errorf("proto: wrong wireType = %d for field MinNotional", wireType)
  8888  			}
  8889  			var stringLen uint64
  8890  			for shift := uint(0); ; shift += 7 {
  8891  				if shift >= 64 {
  8892  					return ErrIntOverflowProposal
  8893  				}
  8894  				if iNdEx >= l {
  8895  					return io.ErrUnexpectedEOF
  8896  				}
  8897  				b := dAtA[iNdEx]
  8898  				iNdEx++
  8899  				stringLen |= uint64(b&0x7F) << shift
  8900  				if b < 0x80 {
  8901  					break
  8902  				}
  8903  			}
  8904  			intStringLen := int(stringLen)
  8905  			if intStringLen < 0 {
  8906  				return ErrInvalidLengthProposal
  8907  			}
  8908  			postIndex := iNdEx + intStringLen
  8909  			if postIndex < 0 {
  8910  				return ErrInvalidLengthProposal
  8911  			}
  8912  			if postIndex > l {
  8913  				return io.ErrUnexpectedEOF
  8914  			}
  8915  			var v cosmossdk_io_math.LegacyDec
  8916  			m.MinNotional = &v
  8917  			if err := m.MinNotional.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8918  				return err
  8919  			}
  8920  			iNdEx = postIndex
  8921  		default:
  8922  			iNdEx = preIndex
  8923  			skippy, err := skipProposal(dAtA[iNdEx:])
  8924  			if err != nil {
  8925  				return err
  8926  			}
  8927  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  8928  				return ErrInvalidLengthProposal
  8929  			}
  8930  			if (iNdEx + skippy) > l {
  8931  				return io.ErrUnexpectedEOF
  8932  			}
  8933  			iNdEx += skippy
  8934  		}
  8935  	}
  8936  
  8937  	if iNdEx > l {
  8938  		return io.ErrUnexpectedEOF
  8939  	}
  8940  	return nil
  8941  }
  8942  func (m *ProviderOracleParams) Unmarshal(dAtA []byte) error {
  8943  	l := len(dAtA)
  8944  	iNdEx := 0
  8945  	for iNdEx < l {
  8946  		preIndex := iNdEx
  8947  		var wire uint64
  8948  		for shift := uint(0); ; shift += 7 {
  8949  			if shift >= 64 {
  8950  				return ErrIntOverflowProposal
  8951  			}
  8952  			if iNdEx >= l {
  8953  				return io.ErrUnexpectedEOF
  8954  			}
  8955  			b := dAtA[iNdEx]
  8956  			iNdEx++
  8957  			wire |= uint64(b&0x7F) << shift
  8958  			if b < 0x80 {
  8959  				break
  8960  			}
  8961  		}
  8962  		fieldNum := int32(wire >> 3)
  8963  		wireType := int(wire & 0x7)
  8964  		if wireType == 4 {
  8965  			return fmt.Errorf("proto: ProviderOracleParams: wiretype end group for non-group")
  8966  		}
  8967  		if fieldNum <= 0 {
  8968  			return fmt.Errorf("proto: ProviderOracleParams: illegal tag %d (wire type %d)", fieldNum, wire)
  8969  		}
  8970  		switch fieldNum {
  8971  		case 1:
  8972  			if wireType != 2 {
  8973  				return fmt.Errorf("proto: wrong wireType = %d for field Symbol", wireType)
  8974  			}
  8975  			var stringLen uint64
  8976  			for shift := uint(0); ; shift += 7 {
  8977  				if shift >= 64 {
  8978  					return ErrIntOverflowProposal
  8979  				}
  8980  				if iNdEx >= l {
  8981  					return io.ErrUnexpectedEOF
  8982  				}
  8983  				b := dAtA[iNdEx]
  8984  				iNdEx++
  8985  				stringLen |= uint64(b&0x7F) << shift
  8986  				if b < 0x80 {
  8987  					break
  8988  				}
  8989  			}
  8990  			intStringLen := int(stringLen)
  8991  			if intStringLen < 0 {
  8992  				return ErrInvalidLengthProposal
  8993  			}
  8994  			postIndex := iNdEx + intStringLen
  8995  			if postIndex < 0 {
  8996  				return ErrInvalidLengthProposal
  8997  			}
  8998  			if postIndex > l {
  8999  				return io.ErrUnexpectedEOF
  9000  			}
  9001  			m.Symbol = string(dAtA[iNdEx:postIndex])
  9002  			iNdEx = postIndex
  9003  		case 2:
  9004  			if wireType != 2 {
  9005  				return fmt.Errorf("proto: wrong wireType = %d for field Provider", wireType)
  9006  			}
  9007  			var stringLen uint64
  9008  			for shift := uint(0); ; shift += 7 {
  9009  				if shift >= 64 {
  9010  					return ErrIntOverflowProposal
  9011  				}
  9012  				if iNdEx >= l {
  9013  					return io.ErrUnexpectedEOF
  9014  				}
  9015  				b := dAtA[iNdEx]
  9016  				iNdEx++
  9017  				stringLen |= uint64(b&0x7F) << shift
  9018  				if b < 0x80 {
  9019  					break
  9020  				}
  9021  			}
  9022  			intStringLen := int(stringLen)
  9023  			if intStringLen < 0 {
  9024  				return ErrInvalidLengthProposal
  9025  			}
  9026  			postIndex := iNdEx + intStringLen
  9027  			if postIndex < 0 {
  9028  				return ErrInvalidLengthProposal
  9029  			}
  9030  			if postIndex > l {
  9031  				return io.ErrUnexpectedEOF
  9032  			}
  9033  			m.Provider = string(dAtA[iNdEx:postIndex])
  9034  			iNdEx = postIndex
  9035  		case 3:
  9036  			if wireType != 0 {
  9037  				return fmt.Errorf("proto: wrong wireType = %d for field OracleScaleFactor", wireType)
  9038  			}
  9039  			m.OracleScaleFactor = 0
  9040  			for shift := uint(0); ; shift += 7 {
  9041  				if shift >= 64 {
  9042  					return ErrIntOverflowProposal
  9043  				}
  9044  				if iNdEx >= l {
  9045  					return io.ErrUnexpectedEOF
  9046  				}
  9047  				b := dAtA[iNdEx]
  9048  				iNdEx++
  9049  				m.OracleScaleFactor |= uint32(b&0x7F) << shift
  9050  				if b < 0x80 {
  9051  					break
  9052  				}
  9053  			}
  9054  		case 4:
  9055  			if wireType != 0 {
  9056  				return fmt.Errorf("proto: wrong wireType = %d for field OracleType", wireType)
  9057  			}
  9058  			m.OracleType = 0
  9059  			for shift := uint(0); ; shift += 7 {
  9060  				if shift >= 64 {
  9061  					return ErrIntOverflowProposal
  9062  				}
  9063  				if iNdEx >= l {
  9064  					return io.ErrUnexpectedEOF
  9065  				}
  9066  				b := dAtA[iNdEx]
  9067  				iNdEx++
  9068  				m.OracleType |= types.OracleType(b&0x7F) << shift
  9069  				if b < 0x80 {
  9070  					break
  9071  				}
  9072  			}
  9073  		default:
  9074  			iNdEx = preIndex
  9075  			skippy, err := skipProposal(dAtA[iNdEx:])
  9076  			if err != nil {
  9077  				return err
  9078  			}
  9079  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9080  				return ErrInvalidLengthProposal
  9081  			}
  9082  			if (iNdEx + skippy) > l {
  9083  				return io.ErrUnexpectedEOF
  9084  			}
  9085  			iNdEx += skippy
  9086  		}
  9087  	}
  9088  
  9089  	if iNdEx > l {
  9090  		return io.ErrUnexpectedEOF
  9091  	}
  9092  	return nil
  9093  }
  9094  func (m *OracleParams) Unmarshal(dAtA []byte) error {
  9095  	l := len(dAtA)
  9096  	iNdEx := 0
  9097  	for iNdEx < l {
  9098  		preIndex := iNdEx
  9099  		var wire uint64
  9100  		for shift := uint(0); ; shift += 7 {
  9101  			if shift >= 64 {
  9102  				return ErrIntOverflowProposal
  9103  			}
  9104  			if iNdEx >= l {
  9105  				return io.ErrUnexpectedEOF
  9106  			}
  9107  			b := dAtA[iNdEx]
  9108  			iNdEx++
  9109  			wire |= uint64(b&0x7F) << shift
  9110  			if b < 0x80 {
  9111  				break
  9112  			}
  9113  		}
  9114  		fieldNum := int32(wire >> 3)
  9115  		wireType := int(wire & 0x7)
  9116  		if wireType == 4 {
  9117  			return fmt.Errorf("proto: OracleParams: wiretype end group for non-group")
  9118  		}
  9119  		if fieldNum <= 0 {
  9120  			return fmt.Errorf("proto: OracleParams: illegal tag %d (wire type %d)", fieldNum, wire)
  9121  		}
  9122  		switch fieldNum {
  9123  		case 1:
  9124  			if wireType != 2 {
  9125  				return fmt.Errorf("proto: wrong wireType = %d for field OracleBase", wireType)
  9126  			}
  9127  			var stringLen uint64
  9128  			for shift := uint(0); ; shift += 7 {
  9129  				if shift >= 64 {
  9130  					return ErrIntOverflowProposal
  9131  				}
  9132  				if iNdEx >= l {
  9133  					return io.ErrUnexpectedEOF
  9134  				}
  9135  				b := dAtA[iNdEx]
  9136  				iNdEx++
  9137  				stringLen |= uint64(b&0x7F) << shift
  9138  				if b < 0x80 {
  9139  					break
  9140  				}
  9141  			}
  9142  			intStringLen := int(stringLen)
  9143  			if intStringLen < 0 {
  9144  				return ErrInvalidLengthProposal
  9145  			}
  9146  			postIndex := iNdEx + intStringLen
  9147  			if postIndex < 0 {
  9148  				return ErrInvalidLengthProposal
  9149  			}
  9150  			if postIndex > l {
  9151  				return io.ErrUnexpectedEOF
  9152  			}
  9153  			m.OracleBase = string(dAtA[iNdEx:postIndex])
  9154  			iNdEx = postIndex
  9155  		case 2:
  9156  			if wireType != 2 {
  9157  				return fmt.Errorf("proto: wrong wireType = %d for field OracleQuote", wireType)
  9158  			}
  9159  			var stringLen uint64
  9160  			for shift := uint(0); ; shift += 7 {
  9161  				if shift >= 64 {
  9162  					return ErrIntOverflowProposal
  9163  				}
  9164  				if iNdEx >= l {
  9165  					return io.ErrUnexpectedEOF
  9166  				}
  9167  				b := dAtA[iNdEx]
  9168  				iNdEx++
  9169  				stringLen |= uint64(b&0x7F) << shift
  9170  				if b < 0x80 {
  9171  					break
  9172  				}
  9173  			}
  9174  			intStringLen := int(stringLen)
  9175  			if intStringLen < 0 {
  9176  				return ErrInvalidLengthProposal
  9177  			}
  9178  			postIndex := iNdEx + intStringLen
  9179  			if postIndex < 0 {
  9180  				return ErrInvalidLengthProposal
  9181  			}
  9182  			if postIndex > l {
  9183  				return io.ErrUnexpectedEOF
  9184  			}
  9185  			m.OracleQuote = string(dAtA[iNdEx:postIndex])
  9186  			iNdEx = postIndex
  9187  		case 3:
  9188  			if wireType != 0 {
  9189  				return fmt.Errorf("proto: wrong wireType = %d for field OracleScaleFactor", wireType)
  9190  			}
  9191  			m.OracleScaleFactor = 0
  9192  			for shift := uint(0); ; shift += 7 {
  9193  				if shift >= 64 {
  9194  					return ErrIntOverflowProposal
  9195  				}
  9196  				if iNdEx >= l {
  9197  					return io.ErrUnexpectedEOF
  9198  				}
  9199  				b := dAtA[iNdEx]
  9200  				iNdEx++
  9201  				m.OracleScaleFactor |= uint32(b&0x7F) << shift
  9202  				if b < 0x80 {
  9203  					break
  9204  				}
  9205  			}
  9206  		case 4:
  9207  			if wireType != 0 {
  9208  				return fmt.Errorf("proto: wrong wireType = %d for field OracleType", wireType)
  9209  			}
  9210  			m.OracleType = 0
  9211  			for shift := uint(0); ; shift += 7 {
  9212  				if shift >= 64 {
  9213  					return ErrIntOverflowProposal
  9214  				}
  9215  				if iNdEx >= l {
  9216  					return io.ErrUnexpectedEOF
  9217  				}
  9218  				b := dAtA[iNdEx]
  9219  				iNdEx++
  9220  				m.OracleType |= types.OracleType(b&0x7F) << shift
  9221  				if b < 0x80 {
  9222  					break
  9223  				}
  9224  			}
  9225  		default:
  9226  			iNdEx = preIndex
  9227  			skippy, err := skipProposal(dAtA[iNdEx:])
  9228  			if err != nil {
  9229  				return err
  9230  			}
  9231  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9232  				return ErrInvalidLengthProposal
  9233  			}
  9234  			if (iNdEx + skippy) > l {
  9235  				return io.ErrUnexpectedEOF
  9236  			}
  9237  			iNdEx += skippy
  9238  		}
  9239  	}
  9240  
  9241  	if iNdEx > l {
  9242  		return io.ErrUnexpectedEOF
  9243  	}
  9244  	return nil
  9245  }
  9246  func (m *TradingRewardCampaignLaunchProposal) Unmarshal(dAtA []byte) error {
  9247  	l := len(dAtA)
  9248  	iNdEx := 0
  9249  	for iNdEx < l {
  9250  		preIndex := iNdEx
  9251  		var wire uint64
  9252  		for shift := uint(0); ; shift += 7 {
  9253  			if shift >= 64 {
  9254  				return ErrIntOverflowProposal
  9255  			}
  9256  			if iNdEx >= l {
  9257  				return io.ErrUnexpectedEOF
  9258  			}
  9259  			b := dAtA[iNdEx]
  9260  			iNdEx++
  9261  			wire |= uint64(b&0x7F) << shift
  9262  			if b < 0x80 {
  9263  				break
  9264  			}
  9265  		}
  9266  		fieldNum := int32(wire >> 3)
  9267  		wireType := int(wire & 0x7)
  9268  		if wireType == 4 {
  9269  			return fmt.Errorf("proto: TradingRewardCampaignLaunchProposal: wiretype end group for non-group")
  9270  		}
  9271  		if fieldNum <= 0 {
  9272  			return fmt.Errorf("proto: TradingRewardCampaignLaunchProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  9273  		}
  9274  		switch fieldNum {
  9275  		case 1:
  9276  			if wireType != 2 {
  9277  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  9278  			}
  9279  			var stringLen uint64
  9280  			for shift := uint(0); ; shift += 7 {
  9281  				if shift >= 64 {
  9282  					return ErrIntOverflowProposal
  9283  				}
  9284  				if iNdEx >= l {
  9285  					return io.ErrUnexpectedEOF
  9286  				}
  9287  				b := dAtA[iNdEx]
  9288  				iNdEx++
  9289  				stringLen |= uint64(b&0x7F) << shift
  9290  				if b < 0x80 {
  9291  					break
  9292  				}
  9293  			}
  9294  			intStringLen := int(stringLen)
  9295  			if intStringLen < 0 {
  9296  				return ErrInvalidLengthProposal
  9297  			}
  9298  			postIndex := iNdEx + intStringLen
  9299  			if postIndex < 0 {
  9300  				return ErrInvalidLengthProposal
  9301  			}
  9302  			if postIndex > l {
  9303  				return io.ErrUnexpectedEOF
  9304  			}
  9305  			m.Title = string(dAtA[iNdEx:postIndex])
  9306  			iNdEx = postIndex
  9307  		case 2:
  9308  			if wireType != 2 {
  9309  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  9310  			}
  9311  			var stringLen uint64
  9312  			for shift := uint(0); ; shift += 7 {
  9313  				if shift >= 64 {
  9314  					return ErrIntOverflowProposal
  9315  				}
  9316  				if iNdEx >= l {
  9317  					return io.ErrUnexpectedEOF
  9318  				}
  9319  				b := dAtA[iNdEx]
  9320  				iNdEx++
  9321  				stringLen |= uint64(b&0x7F) << shift
  9322  				if b < 0x80 {
  9323  					break
  9324  				}
  9325  			}
  9326  			intStringLen := int(stringLen)
  9327  			if intStringLen < 0 {
  9328  				return ErrInvalidLengthProposal
  9329  			}
  9330  			postIndex := iNdEx + intStringLen
  9331  			if postIndex < 0 {
  9332  				return ErrInvalidLengthProposal
  9333  			}
  9334  			if postIndex > l {
  9335  				return io.ErrUnexpectedEOF
  9336  			}
  9337  			m.Description = string(dAtA[iNdEx:postIndex])
  9338  			iNdEx = postIndex
  9339  		case 3:
  9340  			if wireType != 2 {
  9341  				return fmt.Errorf("proto: wrong wireType = %d for field CampaignInfo", wireType)
  9342  			}
  9343  			var msglen int
  9344  			for shift := uint(0); ; shift += 7 {
  9345  				if shift >= 64 {
  9346  					return ErrIntOverflowProposal
  9347  				}
  9348  				if iNdEx >= l {
  9349  					return io.ErrUnexpectedEOF
  9350  				}
  9351  				b := dAtA[iNdEx]
  9352  				iNdEx++
  9353  				msglen |= int(b&0x7F) << shift
  9354  				if b < 0x80 {
  9355  					break
  9356  				}
  9357  			}
  9358  			if msglen < 0 {
  9359  				return ErrInvalidLengthProposal
  9360  			}
  9361  			postIndex := iNdEx + msglen
  9362  			if postIndex < 0 {
  9363  				return ErrInvalidLengthProposal
  9364  			}
  9365  			if postIndex > l {
  9366  				return io.ErrUnexpectedEOF
  9367  			}
  9368  			if m.CampaignInfo == nil {
  9369  				m.CampaignInfo = &TradingRewardCampaignInfo{}
  9370  			}
  9371  			if err := m.CampaignInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9372  				return err
  9373  			}
  9374  			iNdEx = postIndex
  9375  		case 4:
  9376  			if wireType != 2 {
  9377  				return fmt.Errorf("proto: wrong wireType = %d for field CampaignRewardPools", wireType)
  9378  			}
  9379  			var msglen int
  9380  			for shift := uint(0); ; shift += 7 {
  9381  				if shift >= 64 {
  9382  					return ErrIntOverflowProposal
  9383  				}
  9384  				if iNdEx >= l {
  9385  					return io.ErrUnexpectedEOF
  9386  				}
  9387  				b := dAtA[iNdEx]
  9388  				iNdEx++
  9389  				msglen |= int(b&0x7F) << shift
  9390  				if b < 0x80 {
  9391  					break
  9392  				}
  9393  			}
  9394  			if msglen < 0 {
  9395  				return ErrInvalidLengthProposal
  9396  			}
  9397  			postIndex := iNdEx + msglen
  9398  			if postIndex < 0 {
  9399  				return ErrInvalidLengthProposal
  9400  			}
  9401  			if postIndex > l {
  9402  				return io.ErrUnexpectedEOF
  9403  			}
  9404  			m.CampaignRewardPools = append(m.CampaignRewardPools, &CampaignRewardPool{})
  9405  			if err := m.CampaignRewardPools[len(m.CampaignRewardPools)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9406  				return err
  9407  			}
  9408  			iNdEx = postIndex
  9409  		default:
  9410  			iNdEx = preIndex
  9411  			skippy, err := skipProposal(dAtA[iNdEx:])
  9412  			if err != nil {
  9413  				return err
  9414  			}
  9415  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9416  				return ErrInvalidLengthProposal
  9417  			}
  9418  			if (iNdEx + skippy) > l {
  9419  				return io.ErrUnexpectedEOF
  9420  			}
  9421  			iNdEx += skippy
  9422  		}
  9423  	}
  9424  
  9425  	if iNdEx > l {
  9426  		return io.ErrUnexpectedEOF
  9427  	}
  9428  	return nil
  9429  }
  9430  func (m *TradingRewardCampaignUpdateProposal) Unmarshal(dAtA []byte) error {
  9431  	l := len(dAtA)
  9432  	iNdEx := 0
  9433  	for iNdEx < l {
  9434  		preIndex := iNdEx
  9435  		var wire uint64
  9436  		for shift := uint(0); ; shift += 7 {
  9437  			if shift >= 64 {
  9438  				return ErrIntOverflowProposal
  9439  			}
  9440  			if iNdEx >= l {
  9441  				return io.ErrUnexpectedEOF
  9442  			}
  9443  			b := dAtA[iNdEx]
  9444  			iNdEx++
  9445  			wire |= uint64(b&0x7F) << shift
  9446  			if b < 0x80 {
  9447  				break
  9448  			}
  9449  		}
  9450  		fieldNum := int32(wire >> 3)
  9451  		wireType := int(wire & 0x7)
  9452  		if wireType == 4 {
  9453  			return fmt.Errorf("proto: TradingRewardCampaignUpdateProposal: wiretype end group for non-group")
  9454  		}
  9455  		if fieldNum <= 0 {
  9456  			return fmt.Errorf("proto: TradingRewardCampaignUpdateProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  9457  		}
  9458  		switch fieldNum {
  9459  		case 1:
  9460  			if wireType != 2 {
  9461  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  9462  			}
  9463  			var stringLen uint64
  9464  			for shift := uint(0); ; shift += 7 {
  9465  				if shift >= 64 {
  9466  					return ErrIntOverflowProposal
  9467  				}
  9468  				if iNdEx >= l {
  9469  					return io.ErrUnexpectedEOF
  9470  				}
  9471  				b := dAtA[iNdEx]
  9472  				iNdEx++
  9473  				stringLen |= uint64(b&0x7F) << shift
  9474  				if b < 0x80 {
  9475  					break
  9476  				}
  9477  			}
  9478  			intStringLen := int(stringLen)
  9479  			if intStringLen < 0 {
  9480  				return ErrInvalidLengthProposal
  9481  			}
  9482  			postIndex := iNdEx + intStringLen
  9483  			if postIndex < 0 {
  9484  				return ErrInvalidLengthProposal
  9485  			}
  9486  			if postIndex > l {
  9487  				return io.ErrUnexpectedEOF
  9488  			}
  9489  			m.Title = string(dAtA[iNdEx:postIndex])
  9490  			iNdEx = postIndex
  9491  		case 2:
  9492  			if wireType != 2 {
  9493  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  9494  			}
  9495  			var stringLen uint64
  9496  			for shift := uint(0); ; shift += 7 {
  9497  				if shift >= 64 {
  9498  					return ErrIntOverflowProposal
  9499  				}
  9500  				if iNdEx >= l {
  9501  					return io.ErrUnexpectedEOF
  9502  				}
  9503  				b := dAtA[iNdEx]
  9504  				iNdEx++
  9505  				stringLen |= uint64(b&0x7F) << shift
  9506  				if b < 0x80 {
  9507  					break
  9508  				}
  9509  			}
  9510  			intStringLen := int(stringLen)
  9511  			if intStringLen < 0 {
  9512  				return ErrInvalidLengthProposal
  9513  			}
  9514  			postIndex := iNdEx + intStringLen
  9515  			if postIndex < 0 {
  9516  				return ErrInvalidLengthProposal
  9517  			}
  9518  			if postIndex > l {
  9519  				return io.ErrUnexpectedEOF
  9520  			}
  9521  			m.Description = string(dAtA[iNdEx:postIndex])
  9522  			iNdEx = postIndex
  9523  		case 3:
  9524  			if wireType != 2 {
  9525  				return fmt.Errorf("proto: wrong wireType = %d for field CampaignInfo", wireType)
  9526  			}
  9527  			var msglen int
  9528  			for shift := uint(0); ; shift += 7 {
  9529  				if shift >= 64 {
  9530  					return ErrIntOverflowProposal
  9531  				}
  9532  				if iNdEx >= l {
  9533  					return io.ErrUnexpectedEOF
  9534  				}
  9535  				b := dAtA[iNdEx]
  9536  				iNdEx++
  9537  				msglen |= int(b&0x7F) << shift
  9538  				if b < 0x80 {
  9539  					break
  9540  				}
  9541  			}
  9542  			if msglen < 0 {
  9543  				return ErrInvalidLengthProposal
  9544  			}
  9545  			postIndex := iNdEx + msglen
  9546  			if postIndex < 0 {
  9547  				return ErrInvalidLengthProposal
  9548  			}
  9549  			if postIndex > l {
  9550  				return io.ErrUnexpectedEOF
  9551  			}
  9552  			if m.CampaignInfo == nil {
  9553  				m.CampaignInfo = &TradingRewardCampaignInfo{}
  9554  			}
  9555  			if err := m.CampaignInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9556  				return err
  9557  			}
  9558  			iNdEx = postIndex
  9559  		case 4:
  9560  			if wireType != 2 {
  9561  				return fmt.Errorf("proto: wrong wireType = %d for field CampaignRewardPoolsAdditions", wireType)
  9562  			}
  9563  			var msglen int
  9564  			for shift := uint(0); ; shift += 7 {
  9565  				if shift >= 64 {
  9566  					return ErrIntOverflowProposal
  9567  				}
  9568  				if iNdEx >= l {
  9569  					return io.ErrUnexpectedEOF
  9570  				}
  9571  				b := dAtA[iNdEx]
  9572  				iNdEx++
  9573  				msglen |= int(b&0x7F) << shift
  9574  				if b < 0x80 {
  9575  					break
  9576  				}
  9577  			}
  9578  			if msglen < 0 {
  9579  				return ErrInvalidLengthProposal
  9580  			}
  9581  			postIndex := iNdEx + msglen
  9582  			if postIndex < 0 {
  9583  				return ErrInvalidLengthProposal
  9584  			}
  9585  			if postIndex > l {
  9586  				return io.ErrUnexpectedEOF
  9587  			}
  9588  			m.CampaignRewardPoolsAdditions = append(m.CampaignRewardPoolsAdditions, &CampaignRewardPool{})
  9589  			if err := m.CampaignRewardPoolsAdditions[len(m.CampaignRewardPoolsAdditions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9590  				return err
  9591  			}
  9592  			iNdEx = postIndex
  9593  		case 5:
  9594  			if wireType != 2 {
  9595  				return fmt.Errorf("proto: wrong wireType = %d for field CampaignRewardPoolsUpdates", wireType)
  9596  			}
  9597  			var msglen int
  9598  			for shift := uint(0); ; shift += 7 {
  9599  				if shift >= 64 {
  9600  					return ErrIntOverflowProposal
  9601  				}
  9602  				if iNdEx >= l {
  9603  					return io.ErrUnexpectedEOF
  9604  				}
  9605  				b := dAtA[iNdEx]
  9606  				iNdEx++
  9607  				msglen |= int(b&0x7F) << shift
  9608  				if b < 0x80 {
  9609  					break
  9610  				}
  9611  			}
  9612  			if msglen < 0 {
  9613  				return ErrInvalidLengthProposal
  9614  			}
  9615  			postIndex := iNdEx + msglen
  9616  			if postIndex < 0 {
  9617  				return ErrInvalidLengthProposal
  9618  			}
  9619  			if postIndex > l {
  9620  				return io.ErrUnexpectedEOF
  9621  			}
  9622  			m.CampaignRewardPoolsUpdates = append(m.CampaignRewardPoolsUpdates, &CampaignRewardPool{})
  9623  			if err := m.CampaignRewardPoolsUpdates[len(m.CampaignRewardPoolsUpdates)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9624  				return err
  9625  			}
  9626  			iNdEx = postIndex
  9627  		default:
  9628  			iNdEx = preIndex
  9629  			skippy, err := skipProposal(dAtA[iNdEx:])
  9630  			if err != nil {
  9631  				return err
  9632  			}
  9633  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9634  				return ErrInvalidLengthProposal
  9635  			}
  9636  			if (iNdEx + skippy) > l {
  9637  				return io.ErrUnexpectedEOF
  9638  			}
  9639  			iNdEx += skippy
  9640  		}
  9641  	}
  9642  
  9643  	if iNdEx > l {
  9644  		return io.ErrUnexpectedEOF
  9645  	}
  9646  	return nil
  9647  }
  9648  func (m *RewardPointUpdate) Unmarshal(dAtA []byte) error {
  9649  	l := len(dAtA)
  9650  	iNdEx := 0
  9651  	for iNdEx < l {
  9652  		preIndex := iNdEx
  9653  		var wire uint64
  9654  		for shift := uint(0); ; shift += 7 {
  9655  			if shift >= 64 {
  9656  				return ErrIntOverflowProposal
  9657  			}
  9658  			if iNdEx >= l {
  9659  				return io.ErrUnexpectedEOF
  9660  			}
  9661  			b := dAtA[iNdEx]
  9662  			iNdEx++
  9663  			wire |= uint64(b&0x7F) << shift
  9664  			if b < 0x80 {
  9665  				break
  9666  			}
  9667  		}
  9668  		fieldNum := int32(wire >> 3)
  9669  		wireType := int(wire & 0x7)
  9670  		if wireType == 4 {
  9671  			return fmt.Errorf("proto: RewardPointUpdate: wiretype end group for non-group")
  9672  		}
  9673  		if fieldNum <= 0 {
  9674  			return fmt.Errorf("proto: RewardPointUpdate: illegal tag %d (wire type %d)", fieldNum, wire)
  9675  		}
  9676  		switch fieldNum {
  9677  		case 1:
  9678  			if wireType != 2 {
  9679  				return fmt.Errorf("proto: wrong wireType = %d for field AccountAddress", wireType)
  9680  			}
  9681  			var stringLen uint64
  9682  			for shift := uint(0); ; shift += 7 {
  9683  				if shift >= 64 {
  9684  					return ErrIntOverflowProposal
  9685  				}
  9686  				if iNdEx >= l {
  9687  					return io.ErrUnexpectedEOF
  9688  				}
  9689  				b := dAtA[iNdEx]
  9690  				iNdEx++
  9691  				stringLen |= uint64(b&0x7F) << shift
  9692  				if b < 0x80 {
  9693  					break
  9694  				}
  9695  			}
  9696  			intStringLen := int(stringLen)
  9697  			if intStringLen < 0 {
  9698  				return ErrInvalidLengthProposal
  9699  			}
  9700  			postIndex := iNdEx + intStringLen
  9701  			if postIndex < 0 {
  9702  				return ErrInvalidLengthProposal
  9703  			}
  9704  			if postIndex > l {
  9705  				return io.ErrUnexpectedEOF
  9706  			}
  9707  			m.AccountAddress = string(dAtA[iNdEx:postIndex])
  9708  			iNdEx = postIndex
  9709  		case 12:
  9710  			if wireType != 2 {
  9711  				return fmt.Errorf("proto: wrong wireType = %d for field NewPoints", wireType)
  9712  			}
  9713  			var stringLen uint64
  9714  			for shift := uint(0); ; shift += 7 {
  9715  				if shift >= 64 {
  9716  					return ErrIntOverflowProposal
  9717  				}
  9718  				if iNdEx >= l {
  9719  					return io.ErrUnexpectedEOF
  9720  				}
  9721  				b := dAtA[iNdEx]
  9722  				iNdEx++
  9723  				stringLen |= uint64(b&0x7F) << shift
  9724  				if b < 0x80 {
  9725  					break
  9726  				}
  9727  			}
  9728  			intStringLen := int(stringLen)
  9729  			if intStringLen < 0 {
  9730  				return ErrInvalidLengthProposal
  9731  			}
  9732  			postIndex := iNdEx + intStringLen
  9733  			if postIndex < 0 {
  9734  				return ErrInvalidLengthProposal
  9735  			}
  9736  			if postIndex > l {
  9737  				return io.ErrUnexpectedEOF
  9738  			}
  9739  			if err := m.NewPoints.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9740  				return err
  9741  			}
  9742  			iNdEx = postIndex
  9743  		default:
  9744  			iNdEx = preIndex
  9745  			skippy, err := skipProposal(dAtA[iNdEx:])
  9746  			if err != nil {
  9747  				return err
  9748  			}
  9749  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9750  				return ErrInvalidLengthProposal
  9751  			}
  9752  			if (iNdEx + skippy) > l {
  9753  				return io.ErrUnexpectedEOF
  9754  			}
  9755  			iNdEx += skippy
  9756  		}
  9757  	}
  9758  
  9759  	if iNdEx > l {
  9760  		return io.ErrUnexpectedEOF
  9761  	}
  9762  	return nil
  9763  }
  9764  func (m *TradingRewardPendingPointsUpdateProposal) Unmarshal(dAtA []byte) error {
  9765  	l := len(dAtA)
  9766  	iNdEx := 0
  9767  	for iNdEx < l {
  9768  		preIndex := iNdEx
  9769  		var wire uint64
  9770  		for shift := uint(0); ; shift += 7 {
  9771  			if shift >= 64 {
  9772  				return ErrIntOverflowProposal
  9773  			}
  9774  			if iNdEx >= l {
  9775  				return io.ErrUnexpectedEOF
  9776  			}
  9777  			b := dAtA[iNdEx]
  9778  			iNdEx++
  9779  			wire |= uint64(b&0x7F) << shift
  9780  			if b < 0x80 {
  9781  				break
  9782  			}
  9783  		}
  9784  		fieldNum := int32(wire >> 3)
  9785  		wireType := int(wire & 0x7)
  9786  		if wireType == 4 {
  9787  			return fmt.Errorf("proto: TradingRewardPendingPointsUpdateProposal: wiretype end group for non-group")
  9788  		}
  9789  		if fieldNum <= 0 {
  9790  			return fmt.Errorf("proto: TradingRewardPendingPointsUpdateProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  9791  		}
  9792  		switch fieldNum {
  9793  		case 1:
  9794  			if wireType != 2 {
  9795  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  9796  			}
  9797  			var stringLen uint64
  9798  			for shift := uint(0); ; shift += 7 {
  9799  				if shift >= 64 {
  9800  					return ErrIntOverflowProposal
  9801  				}
  9802  				if iNdEx >= l {
  9803  					return io.ErrUnexpectedEOF
  9804  				}
  9805  				b := dAtA[iNdEx]
  9806  				iNdEx++
  9807  				stringLen |= uint64(b&0x7F) << shift
  9808  				if b < 0x80 {
  9809  					break
  9810  				}
  9811  			}
  9812  			intStringLen := int(stringLen)
  9813  			if intStringLen < 0 {
  9814  				return ErrInvalidLengthProposal
  9815  			}
  9816  			postIndex := iNdEx + intStringLen
  9817  			if postIndex < 0 {
  9818  				return ErrInvalidLengthProposal
  9819  			}
  9820  			if postIndex > l {
  9821  				return io.ErrUnexpectedEOF
  9822  			}
  9823  			m.Title = string(dAtA[iNdEx:postIndex])
  9824  			iNdEx = postIndex
  9825  		case 2:
  9826  			if wireType != 2 {
  9827  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  9828  			}
  9829  			var stringLen uint64
  9830  			for shift := uint(0); ; shift += 7 {
  9831  				if shift >= 64 {
  9832  					return ErrIntOverflowProposal
  9833  				}
  9834  				if iNdEx >= l {
  9835  					return io.ErrUnexpectedEOF
  9836  				}
  9837  				b := dAtA[iNdEx]
  9838  				iNdEx++
  9839  				stringLen |= uint64(b&0x7F) << shift
  9840  				if b < 0x80 {
  9841  					break
  9842  				}
  9843  			}
  9844  			intStringLen := int(stringLen)
  9845  			if intStringLen < 0 {
  9846  				return ErrInvalidLengthProposal
  9847  			}
  9848  			postIndex := iNdEx + intStringLen
  9849  			if postIndex < 0 {
  9850  				return ErrInvalidLengthProposal
  9851  			}
  9852  			if postIndex > l {
  9853  				return io.ErrUnexpectedEOF
  9854  			}
  9855  			m.Description = string(dAtA[iNdEx:postIndex])
  9856  			iNdEx = postIndex
  9857  		case 3:
  9858  			if wireType != 0 {
  9859  				return fmt.Errorf("proto: wrong wireType = %d for field PendingPoolTimestamp", wireType)
  9860  			}
  9861  			m.PendingPoolTimestamp = 0
  9862  			for shift := uint(0); ; shift += 7 {
  9863  				if shift >= 64 {
  9864  					return ErrIntOverflowProposal
  9865  				}
  9866  				if iNdEx >= l {
  9867  					return io.ErrUnexpectedEOF
  9868  				}
  9869  				b := dAtA[iNdEx]
  9870  				iNdEx++
  9871  				m.PendingPoolTimestamp |= int64(b&0x7F) << shift
  9872  				if b < 0x80 {
  9873  					break
  9874  				}
  9875  			}
  9876  		case 4:
  9877  			if wireType != 2 {
  9878  				return fmt.Errorf("proto: wrong wireType = %d for field RewardPointUpdates", wireType)
  9879  			}
  9880  			var msglen int
  9881  			for shift := uint(0); ; shift += 7 {
  9882  				if shift >= 64 {
  9883  					return ErrIntOverflowProposal
  9884  				}
  9885  				if iNdEx >= l {
  9886  					return io.ErrUnexpectedEOF
  9887  				}
  9888  				b := dAtA[iNdEx]
  9889  				iNdEx++
  9890  				msglen |= int(b&0x7F) << shift
  9891  				if b < 0x80 {
  9892  					break
  9893  				}
  9894  			}
  9895  			if msglen < 0 {
  9896  				return ErrInvalidLengthProposal
  9897  			}
  9898  			postIndex := iNdEx + msglen
  9899  			if postIndex < 0 {
  9900  				return ErrInvalidLengthProposal
  9901  			}
  9902  			if postIndex > l {
  9903  				return io.ErrUnexpectedEOF
  9904  			}
  9905  			m.RewardPointUpdates = append(m.RewardPointUpdates, &RewardPointUpdate{})
  9906  			if err := m.RewardPointUpdates[len(m.RewardPointUpdates)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9907  				return err
  9908  			}
  9909  			iNdEx = postIndex
  9910  		default:
  9911  			iNdEx = preIndex
  9912  			skippy, err := skipProposal(dAtA[iNdEx:])
  9913  			if err != nil {
  9914  				return err
  9915  			}
  9916  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  9917  				return ErrInvalidLengthProposal
  9918  			}
  9919  			if (iNdEx + skippy) > l {
  9920  				return io.ErrUnexpectedEOF
  9921  			}
  9922  			iNdEx += skippy
  9923  		}
  9924  	}
  9925  
  9926  	if iNdEx > l {
  9927  		return io.ErrUnexpectedEOF
  9928  	}
  9929  	return nil
  9930  }
  9931  func (m *FeeDiscountProposal) Unmarshal(dAtA []byte) error {
  9932  	l := len(dAtA)
  9933  	iNdEx := 0
  9934  	for iNdEx < l {
  9935  		preIndex := iNdEx
  9936  		var wire uint64
  9937  		for shift := uint(0); ; shift += 7 {
  9938  			if shift >= 64 {
  9939  				return ErrIntOverflowProposal
  9940  			}
  9941  			if iNdEx >= l {
  9942  				return io.ErrUnexpectedEOF
  9943  			}
  9944  			b := dAtA[iNdEx]
  9945  			iNdEx++
  9946  			wire |= uint64(b&0x7F) << shift
  9947  			if b < 0x80 {
  9948  				break
  9949  			}
  9950  		}
  9951  		fieldNum := int32(wire >> 3)
  9952  		wireType := int(wire & 0x7)
  9953  		if wireType == 4 {
  9954  			return fmt.Errorf("proto: FeeDiscountProposal: wiretype end group for non-group")
  9955  		}
  9956  		if fieldNum <= 0 {
  9957  			return fmt.Errorf("proto: FeeDiscountProposal: illegal tag %d (wire type %d)", fieldNum, wire)
  9958  		}
  9959  		switch fieldNum {
  9960  		case 1:
  9961  			if wireType != 2 {
  9962  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
  9963  			}
  9964  			var stringLen uint64
  9965  			for shift := uint(0); ; shift += 7 {
  9966  				if shift >= 64 {
  9967  					return ErrIntOverflowProposal
  9968  				}
  9969  				if iNdEx >= l {
  9970  					return io.ErrUnexpectedEOF
  9971  				}
  9972  				b := dAtA[iNdEx]
  9973  				iNdEx++
  9974  				stringLen |= uint64(b&0x7F) << shift
  9975  				if b < 0x80 {
  9976  					break
  9977  				}
  9978  			}
  9979  			intStringLen := int(stringLen)
  9980  			if intStringLen < 0 {
  9981  				return ErrInvalidLengthProposal
  9982  			}
  9983  			postIndex := iNdEx + intStringLen
  9984  			if postIndex < 0 {
  9985  				return ErrInvalidLengthProposal
  9986  			}
  9987  			if postIndex > l {
  9988  				return io.ErrUnexpectedEOF
  9989  			}
  9990  			m.Title = string(dAtA[iNdEx:postIndex])
  9991  			iNdEx = postIndex
  9992  		case 2:
  9993  			if wireType != 2 {
  9994  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  9995  			}
  9996  			var stringLen uint64
  9997  			for shift := uint(0); ; shift += 7 {
  9998  				if shift >= 64 {
  9999  					return ErrIntOverflowProposal
 10000  				}
 10001  				if iNdEx >= l {
 10002  					return io.ErrUnexpectedEOF
 10003  				}
 10004  				b := dAtA[iNdEx]
 10005  				iNdEx++
 10006  				stringLen |= uint64(b&0x7F) << shift
 10007  				if b < 0x80 {
 10008  					break
 10009  				}
 10010  			}
 10011  			intStringLen := int(stringLen)
 10012  			if intStringLen < 0 {
 10013  				return ErrInvalidLengthProposal
 10014  			}
 10015  			postIndex := iNdEx + intStringLen
 10016  			if postIndex < 0 {
 10017  				return ErrInvalidLengthProposal
 10018  			}
 10019  			if postIndex > l {
 10020  				return io.ErrUnexpectedEOF
 10021  			}
 10022  			m.Description = string(dAtA[iNdEx:postIndex])
 10023  			iNdEx = postIndex
 10024  		case 3:
 10025  			if wireType != 2 {
 10026  				return fmt.Errorf("proto: wrong wireType = %d for field Schedule", wireType)
 10027  			}
 10028  			var msglen int
 10029  			for shift := uint(0); ; shift += 7 {
 10030  				if shift >= 64 {
 10031  					return ErrIntOverflowProposal
 10032  				}
 10033  				if iNdEx >= l {
 10034  					return io.ErrUnexpectedEOF
 10035  				}
 10036  				b := dAtA[iNdEx]
 10037  				iNdEx++
 10038  				msglen |= int(b&0x7F) << shift
 10039  				if b < 0x80 {
 10040  					break
 10041  				}
 10042  			}
 10043  			if msglen < 0 {
 10044  				return ErrInvalidLengthProposal
 10045  			}
 10046  			postIndex := iNdEx + msglen
 10047  			if postIndex < 0 {
 10048  				return ErrInvalidLengthProposal
 10049  			}
 10050  			if postIndex > l {
 10051  				return io.ErrUnexpectedEOF
 10052  			}
 10053  			if m.Schedule == nil {
 10054  				m.Schedule = &FeeDiscountSchedule{}
 10055  			}
 10056  			if err := m.Schedule.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10057  				return err
 10058  			}
 10059  			iNdEx = postIndex
 10060  		default:
 10061  			iNdEx = preIndex
 10062  			skippy, err := skipProposal(dAtA[iNdEx:])
 10063  			if err != nil {
 10064  				return err
 10065  			}
 10066  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10067  				return ErrInvalidLengthProposal
 10068  			}
 10069  			if (iNdEx + skippy) > l {
 10070  				return io.ErrUnexpectedEOF
 10071  			}
 10072  			iNdEx += skippy
 10073  		}
 10074  	}
 10075  
 10076  	if iNdEx > l {
 10077  		return io.ErrUnexpectedEOF
 10078  	}
 10079  	return nil
 10080  }
 10081  func (m *BatchCommunityPoolSpendProposal) Unmarshal(dAtA []byte) error {
 10082  	l := len(dAtA)
 10083  	iNdEx := 0
 10084  	for iNdEx < l {
 10085  		preIndex := iNdEx
 10086  		var wire uint64
 10087  		for shift := uint(0); ; shift += 7 {
 10088  			if shift >= 64 {
 10089  				return ErrIntOverflowProposal
 10090  			}
 10091  			if iNdEx >= l {
 10092  				return io.ErrUnexpectedEOF
 10093  			}
 10094  			b := dAtA[iNdEx]
 10095  			iNdEx++
 10096  			wire |= uint64(b&0x7F) << shift
 10097  			if b < 0x80 {
 10098  				break
 10099  			}
 10100  		}
 10101  		fieldNum := int32(wire >> 3)
 10102  		wireType := int(wire & 0x7)
 10103  		if wireType == 4 {
 10104  			return fmt.Errorf("proto: BatchCommunityPoolSpendProposal: wiretype end group for non-group")
 10105  		}
 10106  		if fieldNum <= 0 {
 10107  			return fmt.Errorf("proto: BatchCommunityPoolSpendProposal: illegal tag %d (wire type %d)", fieldNum, wire)
 10108  		}
 10109  		switch fieldNum {
 10110  		case 1:
 10111  			if wireType != 2 {
 10112  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
 10113  			}
 10114  			var stringLen uint64
 10115  			for shift := uint(0); ; shift += 7 {
 10116  				if shift >= 64 {
 10117  					return ErrIntOverflowProposal
 10118  				}
 10119  				if iNdEx >= l {
 10120  					return io.ErrUnexpectedEOF
 10121  				}
 10122  				b := dAtA[iNdEx]
 10123  				iNdEx++
 10124  				stringLen |= uint64(b&0x7F) << shift
 10125  				if b < 0x80 {
 10126  					break
 10127  				}
 10128  			}
 10129  			intStringLen := int(stringLen)
 10130  			if intStringLen < 0 {
 10131  				return ErrInvalidLengthProposal
 10132  			}
 10133  			postIndex := iNdEx + intStringLen
 10134  			if postIndex < 0 {
 10135  				return ErrInvalidLengthProposal
 10136  			}
 10137  			if postIndex > l {
 10138  				return io.ErrUnexpectedEOF
 10139  			}
 10140  			m.Title = string(dAtA[iNdEx:postIndex])
 10141  			iNdEx = postIndex
 10142  		case 2:
 10143  			if wireType != 2 {
 10144  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
 10145  			}
 10146  			var stringLen uint64
 10147  			for shift := uint(0); ; shift += 7 {
 10148  				if shift >= 64 {
 10149  					return ErrIntOverflowProposal
 10150  				}
 10151  				if iNdEx >= l {
 10152  					return io.ErrUnexpectedEOF
 10153  				}
 10154  				b := dAtA[iNdEx]
 10155  				iNdEx++
 10156  				stringLen |= uint64(b&0x7F) << shift
 10157  				if b < 0x80 {
 10158  					break
 10159  				}
 10160  			}
 10161  			intStringLen := int(stringLen)
 10162  			if intStringLen < 0 {
 10163  				return ErrInvalidLengthProposal
 10164  			}
 10165  			postIndex := iNdEx + intStringLen
 10166  			if postIndex < 0 {
 10167  				return ErrInvalidLengthProposal
 10168  			}
 10169  			if postIndex > l {
 10170  				return io.ErrUnexpectedEOF
 10171  			}
 10172  			m.Description = string(dAtA[iNdEx:postIndex])
 10173  			iNdEx = postIndex
 10174  		case 3:
 10175  			if wireType != 2 {
 10176  				return fmt.Errorf("proto: wrong wireType = %d for field Proposals", wireType)
 10177  			}
 10178  			var msglen int
 10179  			for shift := uint(0); ; shift += 7 {
 10180  				if shift >= 64 {
 10181  					return ErrIntOverflowProposal
 10182  				}
 10183  				if iNdEx >= l {
 10184  					return io.ErrUnexpectedEOF
 10185  				}
 10186  				b := dAtA[iNdEx]
 10187  				iNdEx++
 10188  				msglen |= int(b&0x7F) << shift
 10189  				if b < 0x80 {
 10190  					break
 10191  				}
 10192  			}
 10193  			if msglen < 0 {
 10194  				return ErrInvalidLengthProposal
 10195  			}
 10196  			postIndex := iNdEx + msglen
 10197  			if postIndex < 0 {
 10198  				return ErrInvalidLengthProposal
 10199  			}
 10200  			if postIndex > l {
 10201  				return io.ErrUnexpectedEOF
 10202  			}
 10203  			m.Proposals = append(m.Proposals, &types1.CommunityPoolSpendProposal{})
 10204  			if err := m.Proposals[len(m.Proposals)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10205  				return err
 10206  			}
 10207  			iNdEx = postIndex
 10208  		default:
 10209  			iNdEx = preIndex
 10210  			skippy, err := skipProposal(dAtA[iNdEx:])
 10211  			if err != nil {
 10212  				return err
 10213  			}
 10214  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10215  				return ErrInvalidLengthProposal
 10216  			}
 10217  			if (iNdEx + skippy) > l {
 10218  				return io.ErrUnexpectedEOF
 10219  			}
 10220  			iNdEx += skippy
 10221  		}
 10222  	}
 10223  
 10224  	if iNdEx > l {
 10225  		return io.ErrUnexpectedEOF
 10226  	}
 10227  	return nil
 10228  }
 10229  func (m *AtomicMarketOrderFeeMultiplierScheduleProposal) Unmarshal(dAtA []byte) error {
 10230  	l := len(dAtA)
 10231  	iNdEx := 0
 10232  	for iNdEx < l {
 10233  		preIndex := iNdEx
 10234  		var wire uint64
 10235  		for shift := uint(0); ; shift += 7 {
 10236  			if shift >= 64 {
 10237  				return ErrIntOverflowProposal
 10238  			}
 10239  			if iNdEx >= l {
 10240  				return io.ErrUnexpectedEOF
 10241  			}
 10242  			b := dAtA[iNdEx]
 10243  			iNdEx++
 10244  			wire |= uint64(b&0x7F) << shift
 10245  			if b < 0x80 {
 10246  				break
 10247  			}
 10248  		}
 10249  		fieldNum := int32(wire >> 3)
 10250  		wireType := int(wire & 0x7)
 10251  		if wireType == 4 {
 10252  			return fmt.Errorf("proto: AtomicMarketOrderFeeMultiplierScheduleProposal: wiretype end group for non-group")
 10253  		}
 10254  		if fieldNum <= 0 {
 10255  			return fmt.Errorf("proto: AtomicMarketOrderFeeMultiplierScheduleProposal: illegal tag %d (wire type %d)", fieldNum, wire)
 10256  		}
 10257  		switch fieldNum {
 10258  		case 1:
 10259  			if wireType != 2 {
 10260  				return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType)
 10261  			}
 10262  			var stringLen uint64
 10263  			for shift := uint(0); ; shift += 7 {
 10264  				if shift >= 64 {
 10265  					return ErrIntOverflowProposal
 10266  				}
 10267  				if iNdEx >= l {
 10268  					return io.ErrUnexpectedEOF
 10269  				}
 10270  				b := dAtA[iNdEx]
 10271  				iNdEx++
 10272  				stringLen |= uint64(b&0x7F) << shift
 10273  				if b < 0x80 {
 10274  					break
 10275  				}
 10276  			}
 10277  			intStringLen := int(stringLen)
 10278  			if intStringLen < 0 {
 10279  				return ErrInvalidLengthProposal
 10280  			}
 10281  			postIndex := iNdEx + intStringLen
 10282  			if postIndex < 0 {
 10283  				return ErrInvalidLengthProposal
 10284  			}
 10285  			if postIndex > l {
 10286  				return io.ErrUnexpectedEOF
 10287  			}
 10288  			m.Title = string(dAtA[iNdEx:postIndex])
 10289  			iNdEx = postIndex
 10290  		case 2:
 10291  			if wireType != 2 {
 10292  				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
 10293  			}
 10294  			var stringLen uint64
 10295  			for shift := uint(0); ; shift += 7 {
 10296  				if shift >= 64 {
 10297  					return ErrIntOverflowProposal
 10298  				}
 10299  				if iNdEx >= l {
 10300  					return io.ErrUnexpectedEOF
 10301  				}
 10302  				b := dAtA[iNdEx]
 10303  				iNdEx++
 10304  				stringLen |= uint64(b&0x7F) << shift
 10305  				if b < 0x80 {
 10306  					break
 10307  				}
 10308  			}
 10309  			intStringLen := int(stringLen)
 10310  			if intStringLen < 0 {
 10311  				return ErrInvalidLengthProposal
 10312  			}
 10313  			postIndex := iNdEx + intStringLen
 10314  			if postIndex < 0 {
 10315  				return ErrInvalidLengthProposal
 10316  			}
 10317  			if postIndex > l {
 10318  				return io.ErrUnexpectedEOF
 10319  			}
 10320  			m.Description = string(dAtA[iNdEx:postIndex])
 10321  			iNdEx = postIndex
 10322  		case 3:
 10323  			if wireType != 2 {
 10324  				return fmt.Errorf("proto: wrong wireType = %d for field MarketFeeMultipliers", wireType)
 10325  			}
 10326  			var msglen int
 10327  			for shift := uint(0); ; shift += 7 {
 10328  				if shift >= 64 {
 10329  					return ErrIntOverflowProposal
 10330  				}
 10331  				if iNdEx >= l {
 10332  					return io.ErrUnexpectedEOF
 10333  				}
 10334  				b := dAtA[iNdEx]
 10335  				iNdEx++
 10336  				msglen |= int(b&0x7F) << shift
 10337  				if b < 0x80 {
 10338  					break
 10339  				}
 10340  			}
 10341  			if msglen < 0 {
 10342  				return ErrInvalidLengthProposal
 10343  			}
 10344  			postIndex := iNdEx + msglen
 10345  			if postIndex < 0 {
 10346  				return ErrInvalidLengthProposal
 10347  			}
 10348  			if postIndex > l {
 10349  				return io.ErrUnexpectedEOF
 10350  			}
 10351  			m.MarketFeeMultipliers = append(m.MarketFeeMultipliers, &MarketFeeMultiplier{})
 10352  			if err := m.MarketFeeMultipliers[len(m.MarketFeeMultipliers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10353  				return err
 10354  			}
 10355  			iNdEx = postIndex
 10356  		default:
 10357  			iNdEx = preIndex
 10358  			skippy, err := skipProposal(dAtA[iNdEx:])
 10359  			if err != nil {
 10360  				return err
 10361  			}
 10362  			if (skippy < 0) || (iNdEx+skippy) < 0 {
 10363  				return ErrInvalidLengthProposal
 10364  			}
 10365  			if (iNdEx + skippy) > l {
 10366  				return io.ErrUnexpectedEOF
 10367  			}
 10368  			iNdEx += skippy
 10369  		}
 10370  	}
 10371  
 10372  	if iNdEx > l {
 10373  		return io.ErrUnexpectedEOF
 10374  	}
 10375  	return nil
 10376  }
 10377  func skipProposal(dAtA []byte) (n int, err error) {
 10378  	l := len(dAtA)
 10379  	iNdEx := 0
 10380  	depth := 0
 10381  	for iNdEx < l {
 10382  		var wire uint64
 10383  		for shift := uint(0); ; shift += 7 {
 10384  			if shift >= 64 {
 10385  				return 0, ErrIntOverflowProposal
 10386  			}
 10387  			if iNdEx >= l {
 10388  				return 0, io.ErrUnexpectedEOF
 10389  			}
 10390  			b := dAtA[iNdEx]
 10391  			iNdEx++
 10392  			wire |= (uint64(b) & 0x7F) << shift
 10393  			if b < 0x80 {
 10394  				break
 10395  			}
 10396  		}
 10397  		wireType := int(wire & 0x7)
 10398  		switch wireType {
 10399  		case 0:
 10400  			for shift := uint(0); ; shift += 7 {
 10401  				if shift >= 64 {
 10402  					return 0, ErrIntOverflowProposal
 10403  				}
 10404  				if iNdEx >= l {
 10405  					return 0, io.ErrUnexpectedEOF
 10406  				}
 10407  				iNdEx++
 10408  				if dAtA[iNdEx-1] < 0x80 {
 10409  					break
 10410  				}
 10411  			}
 10412  		case 1:
 10413  			iNdEx += 8
 10414  		case 2:
 10415  			var length int
 10416  			for shift := uint(0); ; shift += 7 {
 10417  				if shift >= 64 {
 10418  					return 0, ErrIntOverflowProposal
 10419  				}
 10420  				if iNdEx >= l {
 10421  					return 0, io.ErrUnexpectedEOF
 10422  				}
 10423  				b := dAtA[iNdEx]
 10424  				iNdEx++
 10425  				length |= (int(b) & 0x7F) << shift
 10426  				if b < 0x80 {
 10427  					break
 10428  				}
 10429  			}
 10430  			if length < 0 {
 10431  				return 0, ErrInvalidLengthProposal
 10432  			}
 10433  			iNdEx += length
 10434  		case 3:
 10435  			depth++
 10436  		case 4:
 10437  			if depth == 0 {
 10438  				return 0, ErrUnexpectedEndOfGroupProposal
 10439  			}
 10440  			depth--
 10441  		case 5:
 10442  			iNdEx += 4
 10443  		default:
 10444  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
 10445  		}
 10446  		if iNdEx < 0 {
 10447  			return 0, ErrInvalidLengthProposal
 10448  		}
 10449  		if depth == 0 {
 10450  			return iNdEx, nil
 10451  		}
 10452  	}
 10453  	return 0, io.ErrUnexpectedEOF
 10454  }
 10455  
 10456  var (
 10457  	ErrInvalidLengthProposal        = fmt.Errorf("proto: negative length found during unmarshaling")
 10458  	ErrIntOverflowProposal          = fmt.Errorf("proto: integer overflow")
 10459  	ErrUnexpectedEndOfGroupProposal = fmt.Errorf("proto: unexpected end of group")
 10460  )