From 2fd5205f44c7b345dd3b4070eeb3b8d48f8549d1 Mon Sep 17 00:00:00 2001 From: insumity Date: Tue, 27 Aug 2024 17:09:52 +0200 Subject: [PATCH 1/3] initial commit --- .../ccv/provider/v1/query.proto | 37 +- tests/integration/provider_gov_hooks.go | 51 - x/ccv/provider/client/cli/query.go | 78 +- x/ccv/provider/keeper/genesis.go | 2 - x/ccv/provider/keeper/genesis_test.go | 12 - x/ccv/provider/keeper/grpc_query.go | 59 +- x/ccv/provider/keeper/grpc_query_test.go | 4 + x/ccv/provider/keeper/hooks.go | 70 - x/ccv/provider/keeper/keeper_test.go | 95 -- x/ccv/provider/keeper/partial_set_security.go | 2 +- .../keeper/partial_set_security_test.go | 2 - x/ccv/provider/migrations/v8/migrations.go | 182 ++- x/ccv/provider/module_test.go | 2 - x/ccv/provider/types/genesis.go | 18 +- x/ccv/provider/types/genesis_test.go | 40 - x/ccv/provider/types/query.pb.go | 1122 +++++++++++++---- x/ccv/provider/types/query.pb.gw.go | 130 ++ 17 files changed, 1325 insertions(+), 581 deletions(-) diff --git a/proto/interchain_security/ccv/provider/v1/query.proto b/proto/interchain_security/ccv/provider/v1/query.proto index c9536b8e16..d0e1862a6f 100644 --- a/proto/interchain_security/ccv/provider/v1/query.proto +++ b/proto/interchain_security/ccv/provider/v1/query.proto @@ -35,20 +35,36 @@ service Query { "/interchain_security/ccv/provider/consumer_chains"; } + // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStart` instead // QueryConsumerChainStarts queries consumer chain start proposals. rpc QueryConsumerChainStarts(QueryConsumerChainStartProposalsRequest) returns (QueryConsumerChainStartProposalsResponse) { + option deprecated = true; option (google.api.http).get = "/interchain_security/ccv/provider/consumer_chain_start_proposals"; } + rpc QueryConsumersThatAreAboutToStart(QueryConsumersThatAreAboutToStartRequest) + returns (QueryConsumersThatAreAboutToStartResponse) { + option (google.api.http).get = + "/interchain_security/ccv/provider/consumers_that_are_about_to_start"; + } + + // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStop` instead // QueryConsumerChainStops queries consumer chain stop proposals. rpc QueryConsumerChainStops(QueryConsumerChainStopProposalsRequest) returns (QueryConsumerChainStopProposalsResponse) { + option deprecated = true; option (google.api.http).get = "/interchain_security/ccv/provider/consumer_chain_stop_proposals"; } + rpc QueryConsumersThatAreAboutToStop(QueryConsumersThatAreAboutToStopRequest) + returns (QueryConsumersThatAreAboutToStopResponse) { + option (google.api.http).get = + "/interchain_security/ccv/provider/consumers_that_are_about_to_stop"; + } + // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. rpc QueryValidatorConsumerAddr(QueryValidatorConsumerAddrRequest) @@ -195,18 +211,35 @@ message QueryConsumerChainsRequest {} message QueryConsumerChainsResponse { repeated Chain chains = 1; } +// [DEPRECATED] use `QueryConsumersThatAreAboutToStartRequest` instead message QueryConsumerChainStartProposalsRequest {} +// [DEPRECATED] use `QueryConsumersThatAreAboutToStartResponse` instead message QueryConsumerChainStartProposalsResponse { - ConsumerAdditionProposals proposals = 1; + ConsumerAdditionProposals proposals = 1 [deprecated = true]; } +message QueryConsumersThatAreAboutToStartRequest {} + +message QueryConsumersThatAreAboutToStartResponse { + repeated string consumer_ids = 1; +} + +// [DEPRECATED] use `QueryConsumersThatAreAboutToStopRequest` instead message QueryConsumerChainStopProposalsRequest {} +// [DEPRECATED] use `QueryConsumersThatAreAboutToStopResponse` instead message QueryConsumerChainStopProposalsResponse { - ConsumerRemovalProposals proposals = 1; + ConsumerRemovalProposals proposals = 1 [deprecated = true]; +} + +message QueryConsumersThatAreAboutToStopRequest {} + +message QueryConsumersThatAreAboutToStopResponse { + repeated string consumer_ids = 1; } + message Chain { string chain_id = 1; string client_id = 2; diff --git a/tests/integration/provider_gov_hooks.go b/tests/integration/provider_gov_hooks.go index 0890436781..cdf7ca12b7 100644 --- a/tests/integration/provider_gov_hooks.go +++ b/tests/integration/provider_gov_hooks.go @@ -13,57 +13,6 @@ import ( testkeeper "github.com/cosmos/interchain-security/v5/testutil/keeper" ) -// TestAfterPropSubmissionAndVotingPeriodEnded tests AfterProposalSubmission and AfterProposalVotingPeriodEnded hooks -// require adding a proposal in the gov module and registering a consumer chain with the provider module -func (s *CCVTestSuite) TestAfterPropSubmissionAndVotingPeriodEnded() { - ctx := s.providerChain.GetContext() - providerKeeper := s.providerApp.GetProviderKeeper() - govKeeper := s.providerApp.GetTestGovKeeper() - proposer := s.providerChain.SenderAccount - - msgUpdateConsumer := testkeeper.GetTestMsgUpdateConsumer() - - proposal, err := v1.NewProposal([]sdk.Msg{&msgUpdateConsumer}, 1, time.Now(), time.Now().Add(1*time.Hour), "metadata", "title", "summary", proposer.GetAddress(), false) - s.Require().NoError(err) - - err = govKeeper.SetProposal(ctx, proposal) - s.Require().NoError(err) - - // the proposal can only be submitted if the owner of the chain is the gov module - providerKeeper.SetConsumerOwnerAddress(ctx, msgUpdateConsumer.ConsumerId, "some bogus address") - - err = providerKeeper.Hooks().AfterProposalSubmission(ctx, proposal.Id) - s.Require().Error(err) - - // the proposal can only be submitted if the owner of the chain is the gov module - govModuleAddress := "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn" - providerKeeper.SetConsumerOwnerAddress(ctx, msgUpdateConsumer.ConsumerId, govModuleAddress) - - err = providerKeeper.Hooks().AfterProposalSubmission(ctx, proposal.Id) - s.Require().NoError(err) - - // verify that the proposal id is created - consumerIdOnProvider, ok := providerKeeper.GetProposalIdToConsumerId(ctx, proposal.Id) - s.Require().True(ok) - s.Require().NotEmpty(consumerIdOnProvider) - s.Require().Equal(msgUpdateConsumer.ConsumerId, consumerIdOnProvider) - - providerKeeper.Hooks().AfterProposalVotingPeriodEnded(ctx, proposal.Id) - // verify that the proposal id is deleted - s.Require().Empty(providerKeeper.GetProposalIdToConsumerId(ctx, proposal.Id)) - - // assert that a proposal with more than one `MsgUpdateConsumer` messages fails - proposal, err = v1.NewProposal([]sdk.Msg{&msgUpdateConsumer, &msgUpdateConsumer}, 1, time.Now(), time.Now().Add(1*time.Hour), "metadata", "title", "summary", proposer.GetAddress(), false) - s.Require().NoError(err) - - err = govKeeper.SetProposal(ctx, proposal) - s.Require().NoError(err) - - err = providerKeeper.Hooks().AfterProposalSubmission(ctx, proposal.Id) - s.Require().Error(err) - -} - func (s *CCVTestSuite) TestGetConsumerAdditionFromProp() { ctx := s.providerChain.GetContext() proposer := s.providerChain.SenderAccount diff --git a/x/ccv/provider/client/cli/query.go b/x/ccv/provider/client/cli/query.go index 34d715583c..06bce5ee8d 100644 --- a/x/ccv/provider/client/cli/query.go +++ b/x/ccv/provider/client/cli/query.go @@ -27,7 +27,9 @@ func NewQueryCmd() *cobra.Command { cmd.AddCommand(CmdConsumerGenesis()) cmd.AddCommand(CmdConsumerChains()) cmd.AddCommand(CmdConsumerStartProposals()) + cmd.AddCommand(CmdListConsumersThatAreAboutToStart()) cmd.AddCommand(CmdConsumerStopProposals()) + cmd.AddCommand(CmdListConsumersThatAreAboutToStop()) cmd.AddCommand(CmdConsumerValidatorKeyAssignment()) cmd.AddCommand(CmdProviderValidatorKey()) cmd.AddCommand(CmdThrottleState()) @@ -103,8 +105,10 @@ func CmdConsumerChains() *cobra.Command { func CmdProposedConsumerChains() *cobra.Command { cmd := &cobra.Command{ Use: "list-proposed-consumer-chains", - Short: "Query chainIDs in consumer addition proposal before voting finishes", - Args: cobra.ExactArgs(0), + Short: "Query consumer chains that currently try to join ICS through governance", + Long: `Query to retrieve all the consumer ids of MsgUpdateConsumer messages that currently reside in active + proposals.`, + Args: cobra.ExactArgs(0), RunE: func(cmd *cobra.Command, args []string) (err error) { clientCtx, err := client.GetClientQueryContext(cmd) if err != nil { @@ -130,12 +134,8 @@ func CmdProposedConsumerChains() *cobra.Command { func CmdConsumerStartProposals() *cobra.Command { cmd := &cobra.Command{ Use: "list-start-proposals", - Short: "Query consumer chains start proposals on provider chain.", - Long: `Query mature and pending consumer chains start proposals on provider chain. - Matured proposals will be executed on the next block - their spawn_time has passed - Pending proposals are waiting for their spawn_time to pass. - `, - Args: cobra.ExactArgs(0), + Short: "DEPRECATED! Use `list-consumers-that-will-start` instead.", + Args: cobra.ExactArgs(0), RunE: func(cmd *cobra.Command, args []string) (err error) { clientCtx, err := client.GetClientQueryContext(cmd) if err != nil { @@ -158,15 +158,38 @@ func CmdConsumerStartProposals() *cobra.Command { return cmd } +func CmdListConsumersThatAreAboutToStart() *cobra.Command { + cmd := &cobra.Command{ + Use: "list-consumers-that-will-start", + Short: "Query all the consumer chains that are initialized and about to start.", + Args: cobra.ExactArgs(0), + RunE: func(cmd *cobra.Command, args []string) (err error) { + clientCtx, err := client.GetClientQueryContext(cmd) + if err != nil { + return err + } + queryClient := types.NewQueryClient(clientCtx) + + req := &types.QueryConsumersThatAreAboutToStartRequest{} + res, err := queryClient.QueryConsumersThatAreAboutToStart(cmd.Context(), req) + if err != nil { + return err + } + + return clientCtx.PrintProto(res) + }, + } + + flags.AddQueryFlagsToCmd(cmd) + + return cmd +} + func CmdConsumerStopProposals() *cobra.Command { cmd := &cobra.Command{ Use: "list-stop-proposals", - Short: "Query consumer chains stop proposals on provider chain.", - Long: `Query mature and pending consumer chains stop proposals on provider chain. - Matured proposals will be executed on the next block - their stop_time has passed - Pending proposals are waiting for their stop_time to pass. - `, - Args: cobra.ExactArgs(0), + Short: "DEPRECATED! Use `list-consumers-that-will-stop` instead.", + Args: cobra.ExactArgs(0), RunE: func(cmd *cobra.Command, args []string) (err error) { clientCtx, err := client.GetClientQueryContext(cmd) if err != nil { @@ -189,6 +212,33 @@ func CmdConsumerStopProposals() *cobra.Command { return cmd } +func CmdListConsumersThatAreAboutToStop() *cobra.Command { + cmd := &cobra.Command{ + Use: "list-consumers-that-will-stop", + Short: "Query all the consumer chains that are launched and about to stop.", + Args: cobra.ExactArgs(0), + RunE: func(cmd *cobra.Command, args []string) (err error) { + clientCtx, err := client.GetClientQueryContext(cmd) + if err != nil { + return err + } + queryClient := types.NewQueryClient(clientCtx) + + req := &types.QueryConsumersThatAreAboutToStopRequest{} + res, err := queryClient.QueryConsumersThatAreAboutToStop(cmd.Context(), req) + if err != nil { + return err + } + + return clientCtx.PrintProto(res) + }, + } + + flags.AddQueryFlagsToCmd(cmd) + + return cmd +} + // TODO: fix naming func CmdConsumerValidatorKeyAssignment() *cobra.Command { bech32PrefixConsAddr := sdk.GetConfig().GetBech32ConsensusAddrPrefix() diff --git a/x/ccv/provider/keeper/genesis.go b/x/ccv/provider/keeper/genesis.go index 2e58a718a4..277e89120b 100644 --- a/x/ccv/provider/keeper/genesis.go +++ b/x/ccv/provider/keeper/genesis.go @@ -179,8 +179,6 @@ func (k Keeper) ExportGenesis(ctx sdk.Context) *types.GenesisState { k.GetValidatorSetUpdateId(ctx), k.GetAllValsetUpdateBlockHeights(ctx), consumerStates, - k.GetAllPendingConsumerAdditionProps(ctx), - k.GetAllPendingConsumerRemovalProps(ctx), params, k.GetAllValidatorConsumerPubKeys(ctx, nil), k.GetAllValidatorsByConsumerAddr(ctx, nil), diff --git a/x/ccv/provider/keeper/genesis_test.go b/x/ccv/provider/keeper/genesis_test.go index 8f305f1197..3f3ec2d240 100644 --- a/x/ccv/provider/keeper/genesis_test.go +++ b/x/ccv/provider/keeper/genesis_test.go @@ -62,14 +62,6 @@ func TestInitAndExportGenesis(t *testing.T) { nil, ), }, - []providertypes.ConsumerAdditionProposal{{ - ChainId: cChainIDs[0], - SpawnTime: oneHourFromNow, - }}, - []providertypes.ConsumerRemovalProposal{{ - ChainId: cChainIDs[0], - StopTime: oneHourFromNow, - }}, params, []providertypes.ValidatorConsumerPubKey{ { @@ -139,10 +131,6 @@ func TestInitAndExportGenesis(t *testing.T) { height, found := pk.GetValsetUpdateBlockHeight(ctx, vscID) require.True(t, found) require.Equal(t, initHeight, height) - addProp, found := pk.GetPendingConsumerAdditionProp(ctx, oneHourFromNow, cChainIDs[0]) - require.True(t, found) - require.Equal(t, provGenesis.ConsumerAdditionProposals[0], addProp) - require.True(t, pk.PendingConsumerRemovalPropExists(ctx, cChainIDs[0], oneHourFromNow)) require.Equal(t, provGenesis.Params, pk.GetParams(ctx)) providerConsensusValSet, err := pk.GetLastProviderConsensusValSet(ctx) diff --git a/x/ccv/provider/keeper/grpc_query.go b/x/ccv/provider/keeper/grpc_query.go index b70feef953..0edbfa0eee 100644 --- a/x/ccv/provider/keeper/grpc_query.go +++ b/x/ccv/provider/keeper/grpc_query.go @@ -3,6 +3,8 @@ package keeper import ( "context" "fmt" + govv1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1" + "math" "google.golang.org/grpc/codes" "google.golang.org/grpc/status" @@ -105,39 +107,34 @@ func (k Keeper) GetConsumerChain(ctx sdk.Context, consumerId string) (types.Chai }, nil } -// TODO (PERMISSIONLESS) func (k Keeper) QueryConsumerChainStarts(goCtx context.Context, req *types.QueryConsumerChainStartProposalsRequest) (*types.QueryConsumerChainStartProposalsResponse, error) { + return nil, status.Error(codes.Unimplemented, "This query is not supported anymore. Use `QueryConsumersThatAreAboutToStart` instead") +} + +func (k Keeper) QueryConsumersThatAreAboutToStart(goCtx context.Context, req *types.QueryConsumersThatAreAboutToStartRequest) (*types.QueryConsumersThatAreAboutToStartResponse, error) { if req == nil { return nil, status.Error(codes.InvalidArgument, "empty request") } ctx := sdk.UnwrapSDKContext(goCtx) - var props []*types.ConsumerAdditionProposal - for _, prop := range k.GetAllPendingConsumerAdditionProps(ctx) { - // prevent implicit memory aliasing - p := prop - props = append(props, &p) - } - - return &types.QueryConsumerChainStartProposalsResponse{Proposals: &types.ConsumerAdditionProposals{Pending: props}}, nil + consumerIds := k.GetInitializedConsumersReadyToLaunch(ctx, math.MaxUint32) + return &types.QueryConsumersThatAreAboutToStartResponse{ConsumerIds: consumerIds}, nil } -// TODO (PERMISSIONLESS) func (k Keeper) QueryConsumerChainStops(goCtx context.Context, req *types.QueryConsumerChainStopProposalsRequest) (*types.QueryConsumerChainStopProposalsResponse, error) { + return nil, status.Error(codes.Unimplemented, "This query is not supported anymore. Use `QueryConsumersThatAreAboutToStop` instead") +} + +func (k Keeper) QueryConsumersThatAreAboutToStop(goCtx context.Context, req *types.QueryConsumersThatAreAboutToStopRequest) (*types.QueryConsumersThatAreAboutToStopResponse, error) { if req == nil { return nil, status.Error(codes.InvalidArgument, "empty request") } ctx := sdk.UnwrapSDKContext(goCtx) - var props []*types.ConsumerRemovalProposal - for _, prop := range k.GetAllPendingConsumerRemovalProps(ctx) { - // prevent implicit memory aliasing - p := prop - props = append(props, &p) - } - return &types.QueryConsumerChainStopProposalsResponse{Proposals: &types.ConsumerRemovalProposals{Pending: props}}, nil + consumerIds := k.GetLaunchedConsumersReadyToStop(ctx, math.MaxUint32) + return &types.QueryConsumersThatAreAboutToStopResponse{ConsumerIds: consumerIds}, nil } func (k Keeper) QueryValidatorConsumerAddr(goCtx context.Context, req *types.QueryValidatorConsumerAddrRequest) (*types.QueryValidatorConsumerAddrResponse, error) { @@ -232,7 +229,6 @@ func (k Keeper) QueryRegisteredConsumerRewardDenoms(goCtx context.Context, req * }, nil } -// TODO (PERMISSIONLESS) func (k Keeper) QueryProposedConsumerChainIDs(goCtx context.Context, req *types.QueryProposedChainIDsRequest) (*types.QueryProposedChainIDsResponse, error) { if req == nil { return nil, status.Error(codes.InvalidArgument, "empty request") @@ -240,10 +236,33 @@ func (k Keeper) QueryProposedConsumerChainIDs(goCtx context.Context, req *types. ctx := sdk.UnwrapSDKContext(goCtx) - chains := k.GetAllProposedConsumerChainIDs(ctx) + var proposals []govv1.Proposal + err := k.govKeeper.Proposals.Walk(ctx, nil, func(proposalId uint64, proposal govv1.Proposal) (stop bool, err error) { + proposals = append(proposals, proposal) + return false, nil + }) + if err != nil { + return nil, status.Error(codes.Internal, "failed to retrieve proposals") + } + + var proposedChains []types.ProposedChain + for _, proposal := range proposals { + status := proposal.Status + if status != govv1.ProposalStatus_PROPOSAL_STATUS_DEPOSIT_PERIOD && status != govv1.ProposalStatus_PROPOSAL_STATUS_VOTING_PERIOD { + // we only care about active proposals + continue + } + + messages := proposal.GetMessages() + for _, msg := range messages { + if sdkMsg, isMsgUpdateConsumer := msg.GetCachedValue().(*types.MsgUpdateConsumer); isMsgUpdateConsumer { + proposedChains = append(proposedChains, types.ProposedChain{ProposalID: proposal.Id, ConsumerId: sdkMsg.ConsumerId}) + } + } + } return &types.QueryProposedChainIDsResponse{ - ProposedChains: chains, + ProposedChains: proposedChains, }, nil } diff --git a/x/ccv/provider/keeper/grpc_query_test.go b/x/ccv/provider/keeper/grpc_query_test.go index bbc61794d8..2b1d10015a 100644 --- a/x/ccv/provider/keeper/grpc_query_test.go +++ b/x/ccv/provider/keeper/grpc_query_test.go @@ -384,3 +384,7 @@ func TestQueryConsumerIdFromClientId(t *testing.T) { require.NoError(t, err) require.Equal(t, expectedConsumerId, res.ConsumerId) } + +func TestQueryProposedConsumerChainIDs(t *testing.T) { + // TODO (PERMISSIONLESS) +} diff --git a/x/ccv/provider/keeper/hooks.go b/x/ccv/provider/keeper/hooks.go index 621be7f2a7..f63eb54bfe 100644 --- a/x/ccv/provider/keeper/hooks.go +++ b/x/ccv/provider/keeper/hooks.go @@ -2,8 +2,6 @@ package keeper import ( "context" - "fmt" - "cosmossdk.io/math" sdk "github.com/cosmos/cosmos-sdk/types" sdkgov "github.com/cosmos/cosmos-sdk/x/gov/types" @@ -106,79 +104,11 @@ func (h Hooks) BeforeTokenizeShareRecordRemoved(_ context.Context, _ uint64) err // gov hooks // -// AfterProposalSubmission - call hook if registered -// If an update consumer message exists in the proposal, a record is created that maps the proposal id to the consumer id -// TODO (PERMISSIONLESS) func (h Hooks) AfterProposalSubmission(goCtx context.Context, proposalId uint64) error { - ctx := sdk.UnwrapSDKContext(goCtx) - - p, err := h.k.govKeeper.Proposals.Get(ctx, proposalId) - if err != nil { - return fmt.Errorf("cannot retrieve proposal with id: %d", proposalId) - } - - hasUpdateConsumerMsg := false - for _, msg := range p.GetMessages() { - sdkMsg, isMsgUpdateConsumer := msg.GetCachedValue().(*providertypes.MsgUpdateConsumer) - if isMsgUpdateConsumer { - // A `MsgUpdateConsumer` can only succeed if the owner of the consumer chain is the gov module. - // If that's not the case, we immediately fail the proposal. - // Note that someone could potentially change the owner of a chain to be that of the gov module - // while a proposal is active and before the proposal is executed. Even then, we still do not allow - // `MsgUpdateConsumer` proposals if the owner of the chain is not the gov module to avoid someone forgetting - // to change the owner address while the proposal is active. - ownerAddress, err := h.k.GetConsumerOwnerAddress(ctx, sdkMsg.ConsumerId) - if err != nil { - return fmt.Errorf("cannot find owner address for consumer with consumer id (%s): %s", sdkMsg.ConsumerId, err.Error()) - } else if ownerAddress != h.k.GetAuthority() { - return fmt.Errorf("owner address (%s) is not the gov module (%s)", ownerAddress, h.k.GetAuthority()) - } - - if hasUpdateConsumerMsg { - return fmt.Errorf("proposal can contain at most one `MsgUpdateConsumer` message") - } - hasUpdateConsumerMsg = true - h.k.SetProposalIdToConsumerId(ctx, proposalId, sdkMsg.ConsumerId) - } - - // if the proposal contains a deprecated message, cancel the proposal - _, isMsgConsumerAddition := msg.GetCachedValue().(*providertypes.MsgConsumerAddition) - if isMsgConsumerAddition { - return fmt.Errorf("proposal cannot contain deprecated `MsgConsumerAddition`; use `MsgCreateConsumer` instead") - } - - _, isMsgConsumerModification := msg.GetCachedValue().(*providertypes.MsgConsumerModification) - if isMsgConsumerModification { - return fmt.Errorf("proposal cannot contain deprecated `MsgConsumerModification`; use `MsgUpdateConsumer` instead") - } - _, isMsgConsumerRemoval := msg.GetCachedValue().(*providertypes.MsgConsumerRemoval) - if isMsgConsumerRemoval { - return fmt.Errorf("proposal cannot contain deprecated `MsgConsumerRemoval`; use `MsgRemoveConsumer` instead") - } - } - return nil } -// AfterProposalVotingPeriodEnded - call hook if registered -// After proposal voting ends, the consumer to proposal id record in store is deleted. -// TODO (PERMISSIONLESS) func (h Hooks) AfterProposalVotingPeriodEnded(goCtx context.Context, proposalId uint64) error { - ctx := sdk.UnwrapSDKContext(goCtx) - - p, err := h.k.govKeeper.Proposals.Get(ctx, proposalId) - if err != nil { - return fmt.Errorf("cannot retrieve proposal with id: %d", proposalId) - } - - for _, msg := range p.GetMessages() { - _, isUpdateConsumer := msg.GetCachedValue().(*providertypes.MsgUpdateConsumer) - if isUpdateConsumer { - h.k.DeleteProposalIdToConsumerId(ctx, proposalId) - return nil - } - } - return nil } diff --git a/x/ccv/provider/keeper/keeper_test.go b/x/ccv/provider/keeper/keeper_test.go index d781164e5b..b9b8294955 100644 --- a/x/ccv/provider/keeper/keeper_test.go +++ b/x/ccv/provider/keeper/keeper_test.go @@ -284,101 +284,6 @@ func TestSetSlashLog(t *testing.T) { require.False(t, providerKeeper.GetSlashLog(ctx, addrWithoutDoubleSigns)) } -func TestSetProposedConsumerChains(t *testing.T) { - providerKeeper, ctx, ctrl, _ := testkeeper.GetProviderKeeperAndCtx(t, testkeeper.NewInMemKeeperParams(t)) - defer ctrl.Finish() - - tests := []struct { - consumerId string - proposalId uint64 - }{ - {consumerId: "1", proposalId: 1}, - {consumerId: "some other ID", proposalId: 12}, - {consumerId: "some other other chain ID", proposalId: 123}, - {consumerId: "", proposalId: 1234}, - } - - for _, test := range tests { - providerKeeper.SetProposalIdToConsumerId(ctx, test.proposalId, test.consumerId) - cID, _ := providerKeeper.GetProposalIdToConsumerId(ctx, test.proposalId) - require.Equal(t, cID, test.consumerId) - } -} - -func TestDeleteProposedConsumerChainInStore(t *testing.T) { - providerKeeper, ctx, ctrl, _ := testkeeper.GetProviderKeeperAndCtx(t, testkeeper.NewInMemKeeperParams(t)) - defer ctrl.Finish() - - tests := []struct { - chainId string - proposalId uint64 - deleteProposalId uint64 - ok bool - }{ - {chainId: "1", proposalId: 1, deleteProposalId: 1, ok: true}, - {chainId: "", proposalId: 12, deleteProposalId: 12, ok: true}, - {chainId: "1", proposalId: 0, deleteProposalId: 1, ok: false}, - } - for _, test := range tests { - providerKeeper.SetProposalIdToConsumerId(ctx, test.proposalId, test.chainId) - providerKeeper.DeleteProposalIdToConsumerId(ctx, test.deleteProposalId) - cID, found := providerKeeper.GetProposalIdToConsumerId(ctx, test.proposalId) - if test.ok { - require.False(t, found) - } else { - require.Equal(t, cID, test.chainId) - } - } -} - -func TestGetAllProposedConsumerChainIDs(t *testing.T) { - providerKeeper, ctx, ctrl, _ := testkeeper.GetProviderKeeperAndCtx(t, testkeeper.NewInMemKeeperParams(t)) - defer ctrl.Finish() - tests := [][]types.ProposedChain{ - {}, - { - { - ConsumerId: "1", - ProposalID: 1, - }, - }, - { - { - ConsumerId: "1", - ProposalID: 1, - }, - { - ConsumerId: "2", - ProposalID: 2, - }, - { - ConsumerId: "", - ProposalID: 3, - }, - }, - } - - for _, test := range tests { - for _, tc := range test { - providerKeeper.SetProposalIdToConsumerId(ctx, tc.ProposalID, tc.ConsumerId) - } - - chains := providerKeeper.GetAllProposedConsumerChainIDs(ctx) - - sort.Slice(chains, func(i, j int) bool { - return chains[i].ProposalID < chains[j].ProposalID - }) - sort.Slice(test, func(i, j int) bool { - return test[i].ProposalID < test[j].ProposalID - }) - require.Equal(t, chains, test) - - for _, tc := range test { - providerKeeper.DeleteProposalIdToConsumerId(ctx, tc.ProposalID) - } - } -} - // TestTopN tests the `SetTopN`, `GetTopN`, `IsTopN`, and `IsOptIn` methods func TestTopN(t *testing.T) { providerKeeper, ctx, ctrl, _ := testkeeper.GetProviderKeeperAndCtx(t, testkeeper.NewInMemKeeperParams(t)) diff --git a/x/ccv/provider/keeper/partial_set_security.go b/x/ccv/provider/keeper/partial_set_security.go index 305f0f358b..fbb3cff44e 100644 --- a/x/ccv/provider/keeper/partial_set_security.go +++ b/x/ccv/provider/keeper/partial_set_security.go @@ -137,7 +137,7 @@ func (k Keeper) OptInTopNValidators(ctx sdk.Context, consumerId string, bondedVa // if validator already exists it gets overwritten k.SetOptedIn(ctx, consumerId, types.NewProviderConsAddress(consAddr)) - k.SetOptedIn(ctx, consumerId, types.NewProviderConsAddress(consAddr)) + k.AppendOptedInConsumerId(ctx, types.NewProviderConsAddress(consAddr), consumerId) } // else validators that do not belong to the top N validators but were opted in, remain opted in } } diff --git a/x/ccv/provider/keeper/partial_set_security_test.go b/x/ccv/provider/keeper/partial_set_security_test.go index c710e7f299..8d94c715b2 100644 --- a/x/ccv/provider/keeper/partial_set_security_test.go +++ b/x/ccv/provider/keeper/partial_set_security_test.go @@ -80,7 +80,6 @@ func TestHandleOptInWithConsumerKey(t *testing.T) { } gomock.InOrder(calls...) - providerKeeper.SetProposalIdToConsumerId(ctx, 1, "consumerId") // create a sample consumer key to assign to the `providerAddr` validator // on the consumer chain with `consumerId` @@ -198,7 +197,6 @@ func TestHandleSetConsumerCommissionRate(t *testing.T) { consumerId := "0" providerKeeper.FetchAndIncrementConsumerId(ctx) providerKeeper.SetConsumerPhase(ctx, consumerId, keeper.Initialized) - providerKeeper.SetPendingConsumerAdditionProp(ctx, &types.ConsumerAdditionProposal{ChainId: consumerId}) // check that there's no commission rate set for the validator yet _, found := providerKeeper.GetConsumerCommissionRate(ctx, consumerId, providerAddr) diff --git a/x/ccv/provider/migrations/v8/migrations.go b/x/ccv/provider/migrations/v8/migrations.go index 0c4a759f0b..5c9c28470c 100644 --- a/x/ccv/provider/migrations/v8/migrations.go +++ b/x/ccv/provider/migrations/v8/migrations.go @@ -4,6 +4,7 @@ import ( "bytes" "encoding/binary" "fmt" + "github.com/cosmos/cosmos-sdk/types/bech32" "time" errorsmod "cosmossdk.io/errors" @@ -45,6 +46,7 @@ const ( InitChainHeightKeyPrefix = byte(16) PendingVSCsKeyPrefix = byte(17) EquivocationEvidenceMinHeightKeyPrefix = byte(29) + ConsumerRewardsAllocationKeyPrefix = byte(38) MinimumPowerInTopNKeyPrefix = byte(40) ) @@ -128,7 +130,7 @@ func MigrateLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk chainIds := []string{} iterator := storetypes.KVStorePrefixIterator(store, []byte{LegacyChainToClientKeyPrefix}) for ; iterator.Valid(); iterator.Next() { - // remove 1 byte prefix from key to retrieve chainID + // remove 1 byte prefix from key to retrieve chainId chainId := string(iterator.Key()[1:]) chainIds = append(chainIds, chainId) } @@ -138,70 +140,75 @@ func MigrateLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk } for _, chainId := range chainIds { - // create new consumerID + // create new consumerId consumerId := pk.FetchAndIncrementConsumerId(ctx) // re-key store - // chainId -> clientId - rekeyFromChainIdToConsumerId(store, LegacyChainToClientKeyPrefix, chainId, consumerId) + // channelId -> chainId + channelId, found := pk.GetConsumerIdToChannelId(ctx, chainId) + if !found { + return errorsmod.Wrapf(ccv.ErrInvalidConsumerState, "cannot find channel id associated with consumer id: %s", consumerId) + } + pk.SetChannelToConsumerId(ctx, channelId, consumerId) + // chainId -> channelId rekeyFromChainIdToConsumerId(store, LegacyChainToChannelKeyPrefix, chainId, consumerId) + + // chainId -> clientId + rekeyFromChainIdToConsumerId(store, LegacyChainToClientKeyPrefix, chainId, consumerId) + // chainId -> consumer genesis rekeyFromChainIdToConsumerId(store, ConsumerGenesisKeyPrefix, chainId, consumerId) + // chainId -> SlashAcks rekeyFromChainIdToConsumerId(store, SlashAcksKeyPrefix, chainId, consumerId) + // chainId -> InitChainHeight rekeyFromChainIdToConsumerId(store, InitChainHeightKeyPrefix, chainId, consumerId) + // chainId -> PendingVSCs rekeyFromChainIdToConsumerId(store, PendingVSCsKeyPrefix, chainId, consumerId) - // chainId -> EquivocationEvidenceMinHeight - rekeyFromChainIdToConsumerId(store, EquivocationEvidenceMinHeightKeyPrefix, chainId, consumerId) - // chainId -> MinimumPowerInTopN - rekeyFromChainIdToConsumerId(store, MinimumPowerInTopNKeyPrefix, chainId, consumerId) // chainId -> ConsumerValidators rekeyChainIdAndConsAddrKey(store, providertypes.ConsumerValidatorsKeyPrefix(), chainId, consumerId) + // chainId -> ValidatorsByConsumerAddr rekeyChainIdAndConsAddrKey(store, providertypes.ValidatorsByConsumerAddrKeyPrefix(), chainId, consumerId) - // chainId -> ConsumerCommissionRate - rekeyChainIdAndConsAddrKey(store, providertypes.ConsumerCommissionRateKeyPrefix(), chainId, consumerId) + + // chainId -> EquivocationEvidenceMinHeight + rekeyFromChainIdToConsumerId(store, EquivocationEvidenceMinHeightKeyPrefix, chainId, consumerId) + // chainId -> ConsumerValidator rekeyChainIdAndConsAddrKey(store, providertypes.ConsumerValidatorKeyPrefix(), chainId, consumerId) + + // chainId -> OptedIn + rekeyChainIdAndConsAddrKey(store, providertypes.OptedInKeyPrefix(), chainId, consumerId) + // chainId -> Allowlist rekeyChainIdAndConsAddrKey(store, providertypes.AllowlistKeyPrefix(), chainId, consumerId) + // chainId -> Denylist rekeyChainIdAndConsAddrKey(store, providertypes.DenylistKeyPrefix(), chainId, consumerId) - // chainId -> OptedIn - rekeyChainIdAndConsAddrKey(store, providertypes.OptedInKeyPrefix(), chainId, consumerId) + + // chainId -> ConsumerRewardsAllocations + rekeyFromChainIdToConsumerId(store, ConsumerRewardsAllocationKeyPrefix, chainId, consumerId) + + // chainId -> ConsumerCommissionRate + rekeyChainIdAndConsAddrKey(store, providertypes.ConsumerCommissionRateKeyPrefix(), chainId, consumerId) + + // chainId -> MinimumPowerInTopN + rekeyFromChainIdToConsumerId(store, MinimumPowerInTopNKeyPrefix, chainId, consumerId) // chainId -> ConsumerAddrsToPruneV2 rekeyChainIdAndTsKey(store, providertypes.ConsumerAddrsToPruneV2KeyPrefix(), chainId, consumerId) - // set channelId -> consumerId mapping - channelId, found := pk.GetConsumerIdToChannelId(ctx, consumerId) - if !found { - return errorsmod.Wrapf(ccv.ErrInvalidConsumerState, "cannot find channel ID associated with consumer ID: %s", consumerId) - } - pk.SetChannelToConsumerId(ctx, channelId, consumerId) - - // set clientId -> consumerId mapping - clinetId, found := pk.GetConsumerClientId(ctx, consumerId) - if !found { - return errorsmod.Wrapf(ccv.ErrInvalidConsumerState, "cannot find client ID associated with consumer ID: %s", consumerId) - } - pk.SetClientIdToConsumerId(ctx, clinetId, consumerId) + pk.SetConsumerChainId(ctx, consumerId, chainId) // set ownership -- all existing chains are owned by gov pk.SetConsumerOwnerAddress(ctx, consumerId, pk.GetAuthority()) - pk.SetConsumerChainId(ctx, consumerId, chainId) - - // set phase to launched - // TODO make sure the chain cannot be in Stopped phase - pk.SetConsumerPhase(ctx, consumerId, providerkeeper.Launched) // Note: ConsumerMetadata will be populated in the upgrade handler - // Note: InitializationParameters is not needed since the chain is already launched // migrate power shaping params @@ -211,37 +218,86 @@ func MigrateLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk if buf != nil { topN = binary.BigEndian.Uint32(buf) } + validatorsPowerCapKey := append([]byte{LegacyValidatorsPowerCapKeyPrefix}, []byte(chainId)...) var validatorsPowerCap uint32 = 0 buf = store.Get(validatorsPowerCapKey) if buf != nil { validatorsPowerCap = binary.BigEndian.Uint32(buf) } + validatorSetCapKey := append([]byte{LegacyValidatorSetCapKeyPrefix}, []byte(chainId)...) var validatorSetCap uint32 = 0 buf = store.Get(validatorSetCapKey) if buf != nil { validatorSetCap = binary.BigEndian.Uint32(buf) } + + bech32PrefixConsAddr := sdk.GetConfig().GetBech32ConsensusAddrPrefix() + var allowlist []string + for _, addr := range pk.GetAllowList(ctx, consumerId) { + foo, _ := bech32.ConvertAndEncode(bech32PrefixConsAddr, addr.ToSdkConsAddr().Bytes()) + allowlist = append(allowlist, foo) + } + + var denylist []string + for _, addr := range pk.GetDenyList(ctx, consumerId) { + foo, _ := bech32.ConvertAndEncode(bech32PrefixConsAddr, addr.ToSdkConsAddr().Bytes()) + allowlist = append(allowlist, foo) + } + powerShapingParameters := providertypes.PowerShapingParameters{ Top_N: topN, ValidatorsPowerCap: validatorsPowerCap, ValidatorSetCap: validatorSetCap, - Allowlist: []string{}, // leave empty - Denylist: []string{}, // leave empty - MinStake: 0, - AllowInactiveVals: false, + Allowlist: allowlist, + Denylist: denylist, + // do not set those since they do not exist in a previous interchain-security version and hence cannot be set + MinStake: 0, + AllowInactiveVals: false, } err := pk.SetConsumerPowerShapingParameters(ctx, consumerId, powerShapingParameters) if err != nil { return err } - // TODO other keys - // - ConsumerIdToStopTimeKey - // - ProviderConsAddrToOptedInConsumerIdsKey - // - ... + // set phase to launched + pk.SetConsumerPhase(ctx, consumerId, providerkeeper.Launched) + // An already-launched chain might haven been set to be removed. After the migration, we won't be looking + // at the removal props anymore to remove chains. Because of this, if the chain is set to be removed we + // set its stop time and append the consumer to be stopped. + removalProps, err := legacyGetAllPendingConsumerRemovalProps(store) + if err != nil { + return err + } + for _, prop := range removalProps { + if prop.ChainId == chainId { + err := pk.SetConsumerStopTime(ctx, consumerId, prop.StopTime) + if err != nil { + return err + } + err = pk.AppendConsumerToBeStoppedOnStopTime(ctx, consumerId, prop.StopTime) + if err != nil { + return err + } + + break + } + } + + // This is to migrate everything under `ProviderConsAddrToOptedInConsumerIdsKey` + // `OptedIn` was already re-keyed earlier (see above) and hence we can use `consumerId` here. + for _, providerConsAddr := range pk.GetAllOptedIn(ctx, consumerId) { + pk.AppendOptedInConsumerId(ctx, providerConsAddr, consumerId) + } + + // set clientId -> consumerId mapping + clientId, found := pk.GetConsumerClientId(ctx, consumerId) // consumer to client was already re-keyed so we can use `consumerId` here + if !found { + return errorsmod.Wrapf(ccv.ErrInvalidConsumerState, "cannot find client ID associated with consumer ID: %s", consumerId) + } + pk.SetClientIdToConsumerId(ctx, clientId, consumerId) } return nil @@ -256,9 +312,47 @@ func MigratePreLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, } for _, prop := range props { - // TODO - // - each prop should have a spawn time set, so it can be added to AppendConsumerToBeLaunchedOnSpawnTime - // - populate the state accordingly, including the InitializationParameters + consumerId := pk.FetchAndIncrementConsumerId(ctx) + + pk.SetConsumerOwnerAddress(ctx, consumerId, pk.GetAuthority()) + pk.SetConsumerChainId(ctx, consumerId, prop.ChainId) + + consumerMetadata := providertypes.ConsumerMetadata{ + Name: prop.ChainId, + Description: prop.Description, + } + pk.SetConsumerMetadata(ctx, consumerId, consumerMetadata) + + initializationParameters := providertypes.ConsumerInitializationParameters{ + InitialHeight: prop.InitialHeight, + GenesisHash: prop.GenesisHash, + BinaryHash: prop.BinaryHash, + SpawnTime: prop.SpawnTime, + UnbondingPeriod: prop.UnbondingPeriod, + CcvTimeoutPeriod: prop.CcvTimeoutPeriod, + TransferTimeoutPeriod: prop.TransferTimeoutPeriod, + ConsumerRedistributionFraction: prop.ConsumerRedistributionFraction, + BlocksPerDistributionTransmission: prop.BlocksPerDistributionTransmission, + HistoricalEntries: prop.HistoricalEntries, + DistributionTransmissionChannel: prop.DistributionTransmissionChannel, + } + pk.SetConsumerInitializationParameters(ctx, consumerId, initializationParameters) + + powerShapingParameters := providertypes.PowerShapingParameters{ + Top_N: prop.Top_N, + ValidatorsPowerCap: prop.ValidatorsPowerCap, + ValidatorSetCap: prop.ValidatorSetCap, + Allowlist: prop.Allowlist, + Denylist: prop.Denylist, + MinStake: prop.MinStake, + AllowInactiveVals: prop.AllowInactiveVals, + } + pk.SetConsumerPowerShapingParameters(ctx, consumerId, powerShapingParameters) + + if spawnTime, canLaunch := pk.CanLaunch(ctx, consumerId); canLaunch { + pk.SetConsumerPhase(ctx, consumerId, providerkeeper.Initialized) + pk.PrepareConsumerForLaunch(ctx, consumerId, time.Time{}, spawnTime) + } } // Note that the keys are deleted in CleanupState @@ -269,12 +363,16 @@ func MigratePreLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, // MigrateStoppedConsumerChains migrates all the state for consumer chains about to be stopped // Note that it must be executed before CleanupState. func MigrateStoppedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk providerkeeper.Keeper) error { + // NOTE: We already do the migration of to-be-stopped chains in `MigrateLaunchedConsumerChains`. If a chain can/is to be stopped + // it means it still launched at the moment of the migration. + props, err := legacyGetAllPendingConsumerRemovalProps(store) if err != nil { return err } for _, prop := range props { + _ = prop // TODO // - each prop should have a stop time set, so it can be added to AppendConsumerToBeStoppedOnStopTime // - populate the state accordingly diff --git a/x/ccv/provider/module_test.go b/x/ccv/provider/module_test.go index a019eb162f..9cbe5d6f4c 100644 --- a/x/ccv/provider/module_test.go +++ b/x/ccv/provider/module_test.go @@ -104,8 +104,6 @@ func TestInitGenesis(t *testing.T) { providerKeeper.GetValidatorSetUpdateId(ctx), nil, tc.consumerStates, - nil, - nil, types.DefaultParams(), nil, nil, diff --git a/x/ccv/provider/types/genesis.go b/x/ccv/provider/types/genesis.go index 5cd60982a6..95ca6f44ce 100644 --- a/x/ccv/provider/types/genesis.go +++ b/x/ccv/provider/types/genesis.go @@ -16,23 +16,19 @@ func NewGenesisState( vscID uint64, vscIdToHeights []ValsetUpdateIdToHeight, consumerStates []ConsumerState, - additionProposals []ConsumerAdditionProposal, - removalProposals []ConsumerRemovalProposal, params Params, validatorConsumerPubkeys []ValidatorConsumerPubKey, validatorsByConsumerAddr []ValidatorByConsumerAddr, consumerAddrsToPrune []ConsumerAddrsToPruneV2, ) *GenesisState { return &GenesisState{ - ValsetUpdateId: vscID, - ValsetUpdateIdToHeight: vscIdToHeights, - ConsumerStates: consumerStates, - ConsumerAdditionProposals: additionProposals, - ConsumerRemovalProposals: removalProposals, - Params: params, - ValidatorConsumerPubkeys: validatorConsumerPubkeys, - ValidatorsByConsumerAddr: validatorsByConsumerAddr, - ConsumerAddrsToPruneV2: consumerAddrsToPrune, + ValsetUpdateId: vscID, + ValsetUpdateIdToHeight: vscIdToHeights, + ConsumerStates: consumerStates, + Params: params, + ValidatorConsumerPubkeys: validatorConsumerPubkeys, + ValidatorsByConsumerAddr: validatorsByConsumerAddr, + ConsumerAddrsToPruneV2: consumerAddrsToPrune, } } diff --git a/x/ccv/provider/types/genesis_test.go b/x/ccv/provider/types/genesis_test.go index c5472e07d5..09256a3cdd 100644 --- a/x/ccv/provider/types/genesis_test.go +++ b/x/ccv/provider/types/genesis_test.go @@ -33,8 +33,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id", ConsumerGenesis: getInitialConsumerGenesis(t, "chainid-1")}}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -53,8 +51,6 @@ func TestValidateGenesisState(t *testing.T) { {ChainId: "chainid-3", ChannelId: "channelid3", ClientId: "client-id", ConsumerGenesis: getInitialConsumerGenesis(t, "chainid-3")}, {ChainId: "chainid-4", ChannelId: "channelid4", ClientId: "client-id", ConsumerGenesis: getInitialConsumerGenesis(t, "chainid-4")}, }, - nil, - nil, types.DefaultParams(), nil, nil, @@ -68,8 +64,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id", ConsumerGenesis: getInitialConsumerGenesis(t, "chainid-1")}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, time.Hour, time.Hour, "0.1", sdk.Coin{Denom: "stake", Amount: math.NewInt(10000000)}, 600, 24, 180), @@ -85,8 +79,6 @@ func TestValidateGenesisState(t *testing.T) { 0, nil, nil, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, time.Hour, time.Hour, "0.1", sdk.Coin{Denom: "stake", Amount: math.NewInt(10000000)}, 600, 24, 180), @@ -102,8 +94,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, []types.ValsetUpdateIdToHeight{{ValsetUpdateId: 0}}, nil, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, time.Hour, time.Hour, "0.1", sdk.Coin{Denom: "stake", Amount: math.NewInt(10000000)}, 600, 24, 180), @@ -119,8 +109,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id"}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, 0, clienttypes.Height{}, nil, []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, @@ -140,8 +128,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id"}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), "0.0", // 0 trusting period fraction here @@ -161,8 +147,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id"}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, @@ -182,8 +166,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id"}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, @@ -203,8 +185,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id"}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, @@ -224,8 +204,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "", ChannelId: "channelid", ClientId: "client-id"}}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -239,8 +217,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid", ChannelId: "ivnalidChannel{}", ClientId: "client-id"}}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -254,8 +230,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid", ChannelId: "channel-0", ClientId: ""}}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -269,8 +243,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid", ChannelId: "channel-0", ClientId: "abc", ConsumerGenesis: getInitialConsumerGenesis(t, "chainid")}}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -287,8 +259,6 @@ func TestValidateGenesisState(t *testing.T) { ChainId: "chainid", ChannelId: "channel-0", ClientId: "client-id", ConsumerGenesis: ccv.ConsumerGenesisState{}, }}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -306,8 +276,6 @@ func TestValidateGenesisState(t *testing.T) { ConsumerGenesis: getInitialConsumerGenesis(t, "chainid"), SlashDowntimeAck: []string{"cosmosvaloper1qlmk6r5w5taqrky4ycur4zq6jqxmuzr688htpp"}, }}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -325,8 +293,6 @@ func TestValidateGenesisState(t *testing.T) { ConsumerGenesis: getInitialConsumerGenesis(t, "chainid"), PendingValsetChanges: []ccv.ValidatorSetChangePacketData{{}}, }}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -348,8 +314,6 @@ func TestValidateGenesisState(t *testing.T) { ValidatorUpdates: []abci.ValidatorUpdate{{}}, }}, }}, - nil, - nil, types.DefaultParams(), nil, nil, @@ -363,8 +327,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id", ConsumerGenesis: getInitialConsumerGenesis(t, "chainid-1")}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, time.Hour, time.Hour, "0.1", sdk.Coin{Denom: "st", Amount: math.NewInt(10000000)}, 600, 24, 180), @@ -380,8 +342,6 @@ func TestValidateGenesisState(t *testing.T) { types.DefaultValsetUpdateID, nil, []types.ConsumerState{{ChainId: "chainid-1", ChannelId: "channelid", ClientId: "client-id", ConsumerGenesis: getInitialConsumerGenesis(t, "chainid-1")}}, - nil, - nil, types.NewParams(ibctmtypes.NewClientState("", ibctmtypes.DefaultTrustLevel, 0, 0, time.Second*40, clienttypes.Height{}, commitmenttypes.GetSDKSpecs(), []string{"ibc", "upgradedIBCState"}), types.DefaultTrustingPeriodFraction, time.Hour, time.Hour, "0.1", sdk.Coin{Denom: "stake", Amount: math.NewInt(-1000000)}, 600, 24, 180), diff --git a/x/ccv/provider/types/query.pb.go b/x/ccv/provider/types/query.pb.go index aee4e3d717..e961f04a93 100644 --- a/x/ccv/provider/types/query.pb.go +++ b/x/ccv/provider/types/query.pb.go @@ -216,6 +216,7 @@ func (m *QueryConsumerChainsResponse) GetChains() []*Chain { return nil } +// [DEPRECATED] use `QueryConsumersThatAreAboutToStartRequest` instead type QueryConsumerChainStartProposalsRequest struct { } @@ -254,8 +255,9 @@ func (m *QueryConsumerChainStartProposalsRequest) XXX_DiscardUnknown() { var xxx_messageInfo_QueryConsumerChainStartProposalsRequest proto.InternalMessageInfo +// [DEPRECATED] use `QueryConsumersThatAreAboutToStartResponse` instead type QueryConsumerChainStartProposalsResponse struct { - Proposals *ConsumerAdditionProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` + Proposals *ConsumerAdditionProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` // Deprecated: Do not use. } func (m *QueryConsumerChainStartProposalsResponse) Reset() { @@ -293,6 +295,7 @@ func (m *QueryConsumerChainStartProposalsResponse) XXX_DiscardUnknown() { var xxx_messageInfo_QueryConsumerChainStartProposalsResponse proto.InternalMessageInfo +// Deprecated: Do not use. func (m *QueryConsumerChainStartProposalsResponse) GetProposals() *ConsumerAdditionProposals { if m != nil { return m.Proposals @@ -300,6 +303,93 @@ func (m *QueryConsumerChainStartProposalsResponse) GetProposals() *ConsumerAddit return nil } +type QueryConsumersThatAreAboutToStartRequest struct { +} + +func (m *QueryConsumersThatAreAboutToStartRequest) Reset() { + *m = QueryConsumersThatAreAboutToStartRequest{} +} +func (m *QueryConsumersThatAreAboutToStartRequest) String() string { return proto.CompactTextString(m) } +func (*QueryConsumersThatAreAboutToStartRequest) ProtoMessage() {} +func (*QueryConsumersThatAreAboutToStartRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_422512d7b7586cd7, []int{6} +} +func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest.Merge(m, src) +} +func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryConsumersThatAreAboutToStartRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest proto.InternalMessageInfo + +type QueryConsumersThatAreAboutToStartResponse struct { + ConsumerIds []string `protobuf:"bytes,1,rep,name=consumer_ids,json=consumerIds,proto3" json:"consumer_ids,omitempty"` +} + +func (m *QueryConsumersThatAreAboutToStartResponse) Reset() { + *m = QueryConsumersThatAreAboutToStartResponse{} +} +func (m *QueryConsumersThatAreAboutToStartResponse) String() string { + return proto.CompactTextString(m) +} +func (*QueryConsumersThatAreAboutToStartResponse) ProtoMessage() {} +func (*QueryConsumersThatAreAboutToStartResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_422512d7b7586cd7, []int{7} +} +func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse.Merge(m, src) +} +func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryConsumersThatAreAboutToStartResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse proto.InternalMessageInfo + +func (m *QueryConsumersThatAreAboutToStartResponse) GetConsumerIds() []string { + if m != nil { + return m.ConsumerIds + } + return nil +} + +// [DEPRECATED] use `QueryConsumersThatAreAboutToStopRequest` instead type QueryConsumerChainStopProposalsRequest struct { } @@ -309,7 +399,7 @@ func (m *QueryConsumerChainStopProposalsRequest) Reset() { func (m *QueryConsumerChainStopProposalsRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerChainStopProposalsRequest) ProtoMessage() {} func (*QueryConsumerChainStopProposalsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{6} + return fileDescriptor_422512d7b7586cd7, []int{8} } func (m *QueryConsumerChainStopProposalsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -338,8 +428,9 @@ func (m *QueryConsumerChainStopProposalsRequest) XXX_DiscardUnknown() { var xxx_messageInfo_QueryConsumerChainStopProposalsRequest proto.InternalMessageInfo +// [DEPRECATED] use `QueryConsumersThatAreAboutToStopResponse` instead type QueryConsumerChainStopProposalsResponse struct { - Proposals *ConsumerRemovalProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` + Proposals *ConsumerRemovalProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` // Deprecated: Do not use. } func (m *QueryConsumerChainStopProposalsResponse) Reset() { @@ -348,7 +439,7 @@ func (m *QueryConsumerChainStopProposalsResponse) Reset() { func (m *QueryConsumerChainStopProposalsResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerChainStopProposalsResponse) ProtoMessage() {} func (*QueryConsumerChainStopProposalsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{7} + return fileDescriptor_422512d7b7586cd7, []int{9} } func (m *QueryConsumerChainStopProposalsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -377,6 +468,7 @@ func (m *QueryConsumerChainStopProposalsResponse) XXX_DiscardUnknown() { var xxx_messageInfo_QueryConsumerChainStopProposalsResponse proto.InternalMessageInfo +// Deprecated: Do not use. func (m *QueryConsumerChainStopProposalsResponse) GetProposals() *ConsumerRemovalProposals { if m != nil { return m.Proposals @@ -384,6 +476,90 @@ func (m *QueryConsumerChainStopProposalsResponse) GetProposals() *ConsumerRemova return nil } +type QueryConsumersThatAreAboutToStopRequest struct { +} + +func (m *QueryConsumersThatAreAboutToStopRequest) Reset() { + *m = QueryConsumersThatAreAboutToStopRequest{} +} +func (m *QueryConsumersThatAreAboutToStopRequest) String() string { return proto.CompactTextString(m) } +func (*QueryConsumersThatAreAboutToStopRequest) ProtoMessage() {} +func (*QueryConsumersThatAreAboutToStopRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_422512d7b7586cd7, []int{10} +} +func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest.Merge(m, src) +} +func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Size() int { + return m.Size() +} +func (m *QueryConsumersThatAreAboutToStopRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest proto.InternalMessageInfo + +type QueryConsumersThatAreAboutToStopResponse struct { + ConsumerIds []string `protobuf:"bytes,1,rep,name=consumer_ids,json=consumerIds,proto3" json:"consumer_ids,omitempty"` +} + +func (m *QueryConsumersThatAreAboutToStopResponse) Reset() { + *m = QueryConsumersThatAreAboutToStopResponse{} +} +func (m *QueryConsumersThatAreAboutToStopResponse) String() string { return proto.CompactTextString(m) } +func (*QueryConsumersThatAreAboutToStopResponse) ProtoMessage() {} +func (*QueryConsumersThatAreAboutToStopResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_422512d7b7586cd7, []int{11} +} +func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse.Merge(m, src) +} +func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Size() int { + return m.Size() +} +func (m *QueryConsumersThatAreAboutToStopResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse proto.InternalMessageInfo + +func (m *QueryConsumersThatAreAboutToStopResponse) GetConsumerIds() []string { + if m != nil { + return m.ConsumerIds + } + return nil +} + type Chain struct { ChainId string `protobuf:"bytes,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` @@ -408,7 +584,7 @@ func (m *Chain) Reset() { *m = Chain{} } func (m *Chain) String() string { return proto.CompactTextString(m) } func (*Chain) ProtoMessage() {} func (*Chain) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{8} + return fileDescriptor_422512d7b7586cd7, []int{12} } func (m *Chain) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -506,7 +682,7 @@ func (m *QueryValidatorConsumerAddrRequest) Reset() { *m = QueryValidato func (m *QueryValidatorConsumerAddrRequest) String() string { return proto.CompactTextString(m) } func (*QueryValidatorConsumerAddrRequest) ProtoMessage() {} func (*QueryValidatorConsumerAddrRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{9} + return fileDescriptor_422512d7b7586cd7, []int{13} } func (m *QueryValidatorConsumerAddrRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -544,7 +720,7 @@ func (m *QueryValidatorConsumerAddrResponse) Reset() { *m = QueryValidat func (m *QueryValidatorConsumerAddrResponse) String() string { return proto.CompactTextString(m) } func (*QueryValidatorConsumerAddrResponse) ProtoMessage() {} func (*QueryValidatorConsumerAddrResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{10} + return fileDescriptor_422512d7b7586cd7, []int{14} } func (m *QueryValidatorConsumerAddrResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -593,7 +769,7 @@ func (m *QueryValidatorProviderAddrRequest) Reset() { *m = QueryValidato func (m *QueryValidatorProviderAddrRequest) String() string { return proto.CompactTextString(m) } func (*QueryValidatorProviderAddrRequest) ProtoMessage() {} func (*QueryValidatorProviderAddrRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{11} + return fileDescriptor_422512d7b7586cd7, []int{15} } func (m *QueryValidatorProviderAddrRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -631,7 +807,7 @@ func (m *QueryValidatorProviderAddrResponse) Reset() { *m = QueryValidat func (m *QueryValidatorProviderAddrResponse) String() string { return proto.CompactTextString(m) } func (*QueryValidatorProviderAddrResponse) ProtoMessage() {} func (*QueryValidatorProviderAddrResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{12} + return fileDescriptor_422512d7b7586cd7, []int{16} } func (m *QueryValidatorProviderAddrResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -674,7 +850,7 @@ func (m *QueryThrottleStateRequest) Reset() { *m = QueryThrottleStateReq func (m *QueryThrottleStateRequest) String() string { return proto.CompactTextString(m) } func (*QueryThrottleStateRequest) ProtoMessage() {} func (*QueryThrottleStateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{13} + return fileDescriptor_422512d7b7586cd7, []int{17} } func (m *QueryThrottleStateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -718,7 +894,7 @@ func (m *QueryThrottleStateResponse) Reset() { *m = QueryThrottleStateRe func (m *QueryThrottleStateResponse) String() string { return proto.CompactTextString(m) } func (*QueryThrottleStateResponse) ProtoMessage() {} func (*QueryThrottleStateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{14} + return fileDescriptor_422512d7b7586cd7, []int{18} } func (m *QueryThrottleStateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -779,7 +955,7 @@ func (m *QueryRegisteredConsumerRewardDenomsRequest) String() string { } func (*QueryRegisteredConsumerRewardDenomsRequest) ProtoMessage() {} func (*QueryRegisteredConsumerRewardDenomsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{15} + return fileDescriptor_422512d7b7586cd7, []int{19} } func (m *QueryRegisteredConsumerRewardDenomsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -820,7 +996,7 @@ func (m *QueryRegisteredConsumerRewardDenomsResponse) String() string { } func (*QueryRegisteredConsumerRewardDenomsResponse) ProtoMessage() {} func (*QueryRegisteredConsumerRewardDenomsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{16} + return fileDescriptor_422512d7b7586cd7, []int{20} } func (m *QueryRegisteredConsumerRewardDenomsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -863,7 +1039,7 @@ func (m *QueryProposedChainIDsRequest) Reset() { *m = QueryProposedChain func (m *QueryProposedChainIDsRequest) String() string { return proto.CompactTextString(m) } func (*QueryProposedChainIDsRequest) ProtoMessage() {} func (*QueryProposedChainIDsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{17} + return fileDescriptor_422512d7b7586cd7, []int{21} } func (m *QueryProposedChainIDsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -900,7 +1076,7 @@ func (m *QueryProposedChainIDsResponse) Reset() { *m = QueryProposedChai func (m *QueryProposedChainIDsResponse) String() string { return proto.CompactTextString(m) } func (*QueryProposedChainIDsResponse) ProtoMessage() {} func (*QueryProposedChainIDsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{18} + return fileDescriptor_422512d7b7586cd7, []int{22} } func (m *QueryProposedChainIDsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -947,7 +1123,7 @@ func (m *ProposedChain) Reset() { *m = ProposedChain{} } func (m *ProposedChain) String() string { return proto.CompactTextString(m) } func (*ProposedChain) ProtoMessage() {} func (*ProposedChain) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{19} + return fileDescriptor_422512d7b7586cd7, []int{23} } func (m *ProposedChain) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1013,7 +1189,7 @@ func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) String() string { } func (*QueryAllPairsValConAddrByConsumerChainIDRequest) ProtoMessage() {} func (*QueryAllPairsValConAddrByConsumerChainIDRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{20} + return fileDescriptor_422512d7b7586cd7, []int{24} } func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1069,7 +1245,7 @@ func (m *QueryAllPairsValConAddrByConsumerChainIDResponse) String() string { } func (*QueryAllPairsValConAddrByConsumerChainIDResponse) ProtoMessage() {} func (*QueryAllPairsValConAddrByConsumerChainIDResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{21} + return fileDescriptor_422512d7b7586cd7, []int{25} } func (m *QueryAllPairsValConAddrByConsumerChainIDResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1117,7 +1293,7 @@ func (m *PairValConAddrProviderAndConsumer) Reset() { *m = PairValConAdd func (m *PairValConAddrProviderAndConsumer) String() string { return proto.CompactTextString(m) } func (*PairValConAddrProviderAndConsumer) ProtoMessage() {} func (*PairValConAddrProviderAndConsumer) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{22} + return fileDescriptor_422512d7b7586cd7, []int{26} } func (m *PairValConAddrProviderAndConsumer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1174,7 +1350,7 @@ func (m *QueryParamsRequest) Reset() { *m = QueryParamsRequest{} } func (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) } func (*QueryParamsRequest) ProtoMessage() {} func (*QueryParamsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{23} + return fileDescriptor_422512d7b7586cd7, []int{27} } func (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1211,7 +1387,7 @@ func (m *QueryParamsResponse) Reset() { *m = QueryParamsResponse{} } func (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) } func (*QueryParamsResponse) ProtoMessage() {} func (*QueryParamsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{24} + return fileDescriptor_422512d7b7586cd7, []int{28} } func (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1261,7 +1437,7 @@ func (m *QueryConsumerChainOptedInValidatorsRequest) String() string { } func (*QueryConsumerChainOptedInValidatorsRequest) ProtoMessage() {} func (*QueryConsumerChainOptedInValidatorsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{25} + return fileDescriptor_422512d7b7586cd7, []int{29} } func (m *QueryConsumerChainOptedInValidatorsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1318,7 +1494,7 @@ func (m *QueryConsumerChainOptedInValidatorsResponse) String() string { } func (*QueryConsumerChainOptedInValidatorsResponse) ProtoMessage() {} func (*QueryConsumerChainOptedInValidatorsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{26} + return fileDescriptor_422512d7b7586cd7, []int{30} } func (m *QueryConsumerChainOptedInValidatorsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1364,7 +1540,7 @@ func (m *QueryConsumerValidatorsRequest) Reset() { *m = QueryConsumerVal func (m *QueryConsumerValidatorsRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsRequest) ProtoMessage() {} func (*QueryConsumerValidatorsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{27} + return fileDescriptor_422512d7b7586cd7, []int{31} } func (m *QueryConsumerValidatorsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1443,7 +1619,7 @@ func (m *QueryConsumerValidatorsValidator) Reset() { *m = QueryConsumerV func (m *QueryConsumerValidatorsValidator) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsValidator) ProtoMessage() {} func (*QueryConsumerValidatorsValidator) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{28} + return fileDescriptor_422512d7b7586cd7, []int{32} } func (m *QueryConsumerValidatorsValidator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1551,7 +1727,7 @@ func (m *QueryConsumerValidatorsResponse) Reset() { *m = QueryConsumerVa func (m *QueryConsumerValidatorsResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsResponse) ProtoMessage() {} func (*QueryConsumerValidatorsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{29} + return fileDescriptor_422512d7b7586cd7, []int{33} } func (m *QueryConsumerValidatorsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1600,7 +1776,7 @@ func (m *QueryConsumerChainsValidatorHasToValidateRequest) String() string { } func (*QueryConsumerChainsValidatorHasToValidateRequest) ProtoMessage() {} func (*QueryConsumerChainsValidatorHasToValidateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{30} + return fileDescriptor_422512d7b7586cd7, []int{34} } func (m *QueryConsumerChainsValidatorHasToValidateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1648,7 +1824,7 @@ func (m *QueryConsumerChainsValidatorHasToValidateResponse) String() string { } func (*QueryConsumerChainsValidatorHasToValidateResponse) ProtoMessage() {} func (*QueryConsumerChainsValidatorHasToValidateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{31} + return fileDescriptor_422512d7b7586cd7, []int{35} } func (m *QueryConsumerChainsValidatorHasToValidateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1700,7 +1876,7 @@ func (m *QueryValidatorConsumerCommissionRateRequest) String() string { } func (*QueryValidatorConsumerCommissionRateRequest) ProtoMessage() {} func (*QueryValidatorConsumerCommissionRateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{32} + return fileDescriptor_422512d7b7586cd7, []int{36} } func (m *QueryValidatorConsumerCommissionRateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1764,7 +1940,7 @@ func (m *QueryValidatorConsumerCommissionRateResponse) String() string { } func (*QueryValidatorConsumerCommissionRateResponse) ProtoMessage() {} func (*QueryValidatorConsumerCommissionRateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{33} + return fileDescriptor_422512d7b7586cd7, []int{37} } func (m *QueryValidatorConsumerCommissionRateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1800,7 +1976,7 @@ func (m *QueryBlocksUntilNextEpochRequest) Reset() { *m = QueryBlocksUnt func (m *QueryBlocksUntilNextEpochRequest) String() string { return proto.CompactTextString(m) } func (*QueryBlocksUntilNextEpochRequest) ProtoMessage() {} func (*QueryBlocksUntilNextEpochRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{34} + return fileDescriptor_422512d7b7586cd7, []int{38} } func (m *QueryBlocksUntilNextEpochRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1838,7 +2014,7 @@ func (m *QueryBlocksUntilNextEpochResponse) Reset() { *m = QueryBlocksUn func (m *QueryBlocksUntilNextEpochResponse) String() string { return proto.CompactTextString(m) } func (*QueryBlocksUntilNextEpochResponse) ProtoMessage() {} func (*QueryBlocksUntilNextEpochResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{35} + return fileDescriptor_422512d7b7586cd7, []int{39} } func (m *QueryBlocksUntilNextEpochResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1884,7 +2060,7 @@ func (m *QueryConsumerIdFromClientIdRequest) Reset() { *m = QueryConsume func (m *QueryConsumerIdFromClientIdRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerIdFromClientIdRequest) ProtoMessage() {} func (*QueryConsumerIdFromClientIdRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{36} + return fileDescriptor_422512d7b7586cd7, []int{40} } func (m *QueryConsumerIdFromClientIdRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1929,7 +2105,7 @@ func (m *QueryConsumerIdFromClientIdResponse) Reset() { *m = QueryConsum func (m *QueryConsumerIdFromClientIdResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerIdFromClientIdResponse) ProtoMessage() {} func (*QueryConsumerIdFromClientIdResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{37} + return fileDescriptor_422512d7b7586cd7, []int{41} } func (m *QueryConsumerIdFromClientIdResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1972,8 +2148,12 @@ func init() { proto.RegisterType((*QueryConsumerChainsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainsResponse") proto.RegisterType((*QueryConsumerChainStartProposalsRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStartProposalsRequest") proto.RegisterType((*QueryConsumerChainStartProposalsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStartProposalsResponse") + proto.RegisterType((*QueryConsumersThatAreAboutToStartRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStartRequest") + proto.RegisterType((*QueryConsumersThatAreAboutToStartResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStartResponse") proto.RegisterType((*QueryConsumerChainStopProposalsRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStopProposalsRequest") proto.RegisterType((*QueryConsumerChainStopProposalsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStopProposalsResponse") + proto.RegisterType((*QueryConsumersThatAreAboutToStopRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStopRequest") + proto.RegisterType((*QueryConsumersThatAreAboutToStopResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStopResponse") proto.RegisterType((*Chain)(nil), "interchain_security.ccv.provider.v1.Chain") proto.RegisterType((*QueryValidatorConsumerAddrRequest)(nil), "interchain_security.ccv.provider.v1.QueryValidatorConsumerAddrRequest") proto.RegisterType((*QueryValidatorConsumerAddrResponse)(nil), "interchain_security.ccv.provider.v1.QueryValidatorConsumerAddrResponse") @@ -2011,159 +2191,167 @@ func init() { } var fileDescriptor_422512d7b7586cd7 = []byte{ - // 2427 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0x4d, 0x6c, 0x1c, 0x49, - 0x15, 0x76, 0x8f, 0x7f, 0x62, 0x97, 0x37, 0xce, 0x6e, 0xc5, 0x89, 0x27, 0x63, 0xc7, 0xe3, 0x74, - 0x12, 0x98, 0x38, 0xc9, 0xb4, 0xed, 0xd5, 0xb2, 0x9b, 0x40, 0x36, 0xf1, 0x8c, 0xe3, 0x64, 0xe4, - 0x6c, 0xe2, 0x6d, 0x3b, 0x01, 0x79, 0x31, 0x9d, 0x76, 0x77, 0x31, 0x6e, 0xdc, 0xd3, 0xd5, 0xee, - 0xea, 0x99, 0x64, 0x14, 0xe5, 0xb0, 0x20, 0xa1, 0x5d, 0x0e, 0x28, 0x08, 0x21, 0x71, 0xdc, 0x0b, - 0x12, 0x07, 0x4e, 0x68, 0x05, 0xe2, 0xb6, 0xc7, 0xbd, 0xb1, 0xec, 0x5e, 0x10, 0x48, 0x01, 0x25, - 0x1c, 0x10, 0x12, 0x12, 0x5a, 0xb8, 0x22, 0xa1, 0xae, 0xae, 0xfe, 0x9d, 0x1e, 0x4f, 0xcf, 0x8c, - 0x0f, 0xdc, 0xdc, 0x55, 0xaf, 0xbe, 0x7a, 0xef, 0xd5, 0xab, 0x57, 0xef, 0x7d, 0x63, 0x20, 0x68, - 0x86, 0x8d, 0x2c, 0x65, 0x57, 0xd6, 0x0c, 0x89, 0x20, 0xa5, 0x6e, 0x69, 0x76, 0x53, 0x50, 0x94, - 0x86, 0x60, 0x5a, 0xb8, 0xa1, 0xa9, 0xc8, 0x12, 0x1a, 0x8b, 0xc2, 0x7e, 0x1d, 0x59, 0xcd, 0xa2, - 0x69, 0x61, 0x1b, 0xc3, 0xb3, 0x09, 0x0b, 0x8a, 0x8a, 0xd2, 0x28, 0x7a, 0x0b, 0x8a, 0x8d, 0xc5, - 0xdc, 0x4c, 0x15, 0xe3, 0xaa, 0x8e, 0x04, 0xd9, 0xd4, 0x04, 0xd9, 0x30, 0xb0, 0x2d, 0xdb, 0x1a, - 0x36, 0x88, 0x0b, 0x91, 0x9b, 0xac, 0xe2, 0x2a, 0xa6, 0x7f, 0x0a, 0xce, 0x5f, 0x6c, 0x34, 0xcf, - 0xd6, 0xd0, 0xaf, 0x9d, 0xfa, 0x77, 0x05, 0x5b, 0xab, 0x21, 0x62, 0xcb, 0x35, 0x93, 0x09, 0x2c, - 0xa5, 0x51, 0xd5, 0xd7, 0xc2, 0x5d, 0xb3, 0xd0, 0x6e, 0x4d, 0x63, 0x51, 0x20, 0xbb, 0xb2, 0x85, - 0x54, 0x49, 0xc1, 0x06, 0xa9, 0xd7, 0xfc, 0x15, 0xe7, 0x0f, 0x58, 0xf1, 0x48, 0xb3, 0x10, 0x13, - 0x9b, 0xb1, 0x91, 0xa1, 0x22, 0xab, 0xa6, 0x19, 0xb6, 0xa0, 0x58, 0x4d, 0xd3, 0xc6, 0xc2, 0x1e, - 0x6a, 0x7a, 0x16, 0x9e, 0x52, 0x30, 0xa9, 0x61, 0x22, 0xb9, 0x46, 0xba, 0x1f, 0x6c, 0xea, 0x9c, - 0xfb, 0x25, 0x10, 0x5b, 0xde, 0xd3, 0x8c, 0xaa, 0xd0, 0x58, 0xdc, 0x41, 0xb6, 0xbc, 0xe8, 0x7d, - 0xbb, 0x52, 0xfc, 0x36, 0x98, 0x7e, 0xd7, 0x71, 0x7a, 0x99, 0x29, 0x77, 0x0b, 0x19, 0x88, 0x68, - 0x44, 0x44, 0xfb, 0x75, 0x44, 0x6c, 0x78, 0x1a, 0x8c, 0xba, 0x1a, 0x6a, 0x6a, 0x96, 0x9b, 0xe3, - 0x0a, 0x63, 0xa5, 0x4c, 0x96, 0x13, 0x8f, 0xd0, 0xb1, 0x8a, 0x0a, 0xf3, 0x60, 0xdc, 0xb3, 0xca, - 0x91, 0xc8, 0x38, 0x12, 0x22, 0xf0, 0x86, 0x2a, 0x2a, 0xff, 0x04, 0xcc, 0x24, 0xc3, 0x13, 0x13, - 0x1b, 0x04, 0xc1, 0xf7, 0xc0, 0xd1, 0xaa, 0x3b, 0x24, 0x11, 0x5b, 0xb6, 0x11, 0xdd, 0x64, 0x7c, - 0x69, 0xa1, 0xd8, 0xee, 0xf0, 0x1b, 0x8b, 0xc5, 0x18, 0xd6, 0x86, 0xb3, 0xae, 0x34, 0xf4, 0xe9, - 0xf3, 0xfc, 0x80, 0xf8, 0x4a, 0x35, 0x34, 0xc6, 0xcf, 0x80, 0x5c, 0x64, 0xf3, 0xb2, 0x03, 0xe7, - 0x99, 0xc6, 0xcb, 0x31, 0xcb, 0xbd, 0x59, 0xa6, 0x59, 0x09, 0x8c, 0xd0, 0xed, 0x49, 0x96, 0x9b, - 0x1b, 0x2c, 0x8c, 0x2f, 0xcd, 0x17, 0x53, 0xc4, 0x63, 0x91, 0x82, 0x88, 0x6c, 0x25, 0x7f, 0x01, - 0x7c, 0xb5, 0x75, 0x8b, 0x0d, 0x5b, 0xb6, 0xec, 0x75, 0x0b, 0x9b, 0x98, 0xc8, 0xba, 0xaf, 0xcd, - 0x07, 0x1c, 0x28, 0x74, 0x96, 0x65, 0xba, 0x7d, 0x1b, 0x8c, 0x99, 0xde, 0x20, 0xf3, 0xd8, 0xdb, - 0xe9, 0xd4, 0x63, 0xe0, 0xcb, 0xaa, 0xaa, 0x39, 0x17, 0x25, 0x80, 0x0e, 0x00, 0xf9, 0x02, 0xf8, - 0x4a, 0x92, 0x26, 0xd8, 0x6c, 0x51, 0xfa, 0x87, 0x5c, 0xb2, 0x81, 0x11, 0x51, 0xff, 0xa4, 0x5b, - 0x74, 0xbe, 0xd6, 0x95, 0xce, 0x22, 0xaa, 0xe1, 0x86, 0xac, 0x27, 0xaa, 0xfc, 0xf3, 0x0c, 0x18, - 0xa6, 0x7b, 0xc3, 0x53, 0xf1, 0x80, 0x0d, 0x82, 0x75, 0x1a, 0x8c, 0x29, 0xba, 0x86, 0x0c, 0x3b, - 0x08, 0xd5, 0x51, 0x77, 0xa0, 0xa2, 0xc2, 0xe3, 0x60, 0xd8, 0xc6, 0xa6, 0x74, 0x37, 0x3b, 0x38, - 0xc7, 0x15, 0x8e, 0x8a, 0x43, 0x36, 0x36, 0xef, 0xc2, 0x79, 0x00, 0x6b, 0x9a, 0x21, 0x99, 0xf8, - 0x91, 0x13, 0xdf, 0x86, 0xe4, 0x4a, 0x0c, 0xcd, 0x71, 0x85, 0x41, 0x71, 0xa2, 0xa6, 0x19, 0xeb, - 0xce, 0x44, 0xc5, 0xd8, 0x74, 0x64, 0x17, 0xc0, 0x64, 0x43, 0xd6, 0x35, 0x55, 0xb6, 0xb1, 0x45, - 0xd8, 0x12, 0x45, 0x36, 0xb3, 0xc3, 0x14, 0x0f, 0x06, 0x73, 0x74, 0x51, 0x59, 0x36, 0xe1, 0x3c, - 0x78, 0xcd, 0x1f, 0x95, 0x08, 0xb2, 0xa9, 0xf8, 0x08, 0x15, 0x3f, 0xe6, 0x4f, 0x6c, 0x20, 0xdb, - 0x91, 0x9d, 0x01, 0x63, 0xb2, 0xae, 0xe3, 0x47, 0xba, 0x46, 0xec, 0xec, 0x91, 0xb9, 0xc1, 0xc2, - 0x98, 0x18, 0x0c, 0xc0, 0x1c, 0x18, 0x55, 0x91, 0xd1, 0xa4, 0x93, 0xa3, 0x74, 0xd2, 0xff, 0xe6, - 0x7f, 0xc5, 0x81, 0x33, 0xf4, 0x8c, 0x1e, 0x78, 0x90, 0xa1, 0x20, 0xb0, 0x52, 0xde, 0xf3, 0x6b, - 0xe0, 0x55, 0xef, 0x48, 0x24, 0x59, 0x55, 0x2d, 0x44, 0x88, 0xeb, 0xc1, 0x12, 0xfc, 0xf2, 0x79, - 0x7e, 0xa2, 0x29, 0xd7, 0xf4, 0xab, 0x3c, 0x9b, 0xe0, 0xc5, 0x63, 0x9e, 0xec, 0xb2, 0x3b, 0x12, - 0x4f, 0x13, 0x83, 0xf1, 0x34, 0x71, 0x75, 0xf4, 0x83, 0x8f, 0xf2, 0x03, 0x7f, 0xff, 0x28, 0x3f, - 0xc0, 0xdf, 0x03, 0xfc, 0x41, 0xda, 0xb2, 0x60, 0xba, 0x00, 0x5e, 0xf5, 0x01, 0x3d, 0x7d, 0xdc, - 0xd3, 0x3e, 0xa6, 0x84, 0xe4, 0x1d, 0x6d, 0x5a, 0xed, 0x5f, 0x0f, 0x69, 0x97, 0xde, 0xfe, 0x96, - 0xfd, 0x0e, 0xb0, 0x3f, 0xa6, 0x43, 0x5f, 0xf6, 0x47, 0xb5, 0x0d, 0xec, 0x6f, 0x39, 0x0f, 0x66, - 0x7f, 0xcc, 0xf7, 0xfc, 0x34, 0x38, 0x45, 0x01, 0x37, 0x77, 0x2d, 0x6c, 0xdb, 0x3a, 0xa2, 0xa9, - 0xd1, 0xbb, 0xc0, 0x7f, 0xe0, 0x58, 0x8a, 0x8c, 0xcd, 0xb2, 0x6d, 0xf2, 0x60, 0x9c, 0xe8, 0x32, - 0xd9, 0x95, 0x6a, 0xc8, 0x46, 0x16, 0xdd, 0x61, 0x50, 0x04, 0x74, 0xe8, 0x1d, 0x67, 0x04, 0x2e, - 0x81, 0x13, 0x21, 0x01, 0x89, 0x46, 0xa4, 0x6c, 0x28, 0x88, 0x3a, 0x67, 0x50, 0x3c, 0x1e, 0x88, - 0x2e, 0x7b, 0x53, 0xf0, 0x3b, 0x20, 0x6b, 0xa0, 0xc7, 0xb6, 0x64, 0x21, 0x53, 0x47, 0x86, 0x46, - 0x76, 0x25, 0x45, 0x36, 0x54, 0xc7, 0x58, 0x44, 0x3d, 0x33, 0xbe, 0x94, 0x2b, 0xba, 0x2f, 0x74, - 0xd1, 0x7b, 0xa1, 0x8b, 0x9b, 0xde, 0x0b, 0x5d, 0x1a, 0x75, 0xf2, 0xfc, 0xb3, 0xbf, 0xe4, 0x39, - 0xf1, 0xa4, 0x83, 0x22, 0x7a, 0x20, 0x65, 0x0f, 0x83, 0xbf, 0x04, 0xe6, 0xa9, 0x49, 0x22, 0xaa, - 0x6a, 0xc4, 0x46, 0x16, 0x52, 0x83, 0x0c, 0xf2, 0x48, 0xb6, 0xd4, 0x15, 0x64, 0xe0, 0x9a, 0x9f, - 0xc2, 0x6e, 0x82, 0x8b, 0xa9, 0xa4, 0x99, 0x47, 0x4e, 0x82, 0x11, 0x95, 0x8e, 0xd0, 0x57, 0x61, - 0x4c, 0x64, 0x5f, 0xfc, 0x2c, 0x7b, 0xe7, 0xdc, 0xec, 0x84, 0x54, 0x9a, 0x8c, 0x2a, 0x2b, 0xfe, - 0x36, 0xef, 0x73, 0xe0, 0x74, 0x1b, 0x01, 0x86, 0xfc, 0x10, 0x4c, 0x98, 0xe1, 0x39, 0xef, 0xdd, - 0x59, 0x4a, 0x95, 0x24, 0x23, 0xb0, 0xec, 0x31, 0x8c, 0xe1, 0xf1, 0x06, 0x38, 0x1a, 0x11, 0x83, - 0x33, 0x80, 0x05, 0xf8, 0x4a, 0x6b, 0xcc, 0xaf, 0xc0, 0x59, 0x00, 0xbc, 0x04, 0x5b, 0x59, 0xa1, - 0x07, 0x3a, 0x24, 0x86, 0x46, 0x3a, 0x06, 0x35, 0xbf, 0x0f, 0x04, 0x6a, 0xf2, 0xb2, 0xae, 0xaf, - 0xcb, 0x9a, 0x45, 0x1e, 0xc8, 0x7a, 0x19, 0x1b, 0x4e, 0x5c, 0x96, 0xa2, 0x0f, 0x46, 0x65, 0xe5, - 0xb0, 0xca, 0x8d, 0x5f, 0x70, 0x60, 0x21, 0xfd, 0x9e, 0xcc, 0xf3, 0xfb, 0xe0, 0x35, 0x53, 0xd6, - 0x2c, 0xa9, 0x21, 0xeb, 0x4e, 0x8d, 0x46, 0x2f, 0x14, 0x73, 0xfe, 0x6a, 0x3a, 0xe7, 0xcb, 0x9a, - 0x15, 0x6c, 0xe4, 0x5f, 0x58, 0x23, 0x08, 0xa5, 0x09, 0x33, 0x22, 0xc2, 0xff, 0x87, 0x03, 0x67, - 0x3a, 0xae, 0x82, 0xab, 0xed, 0x6e, 0x79, 0x69, 0xfa, 0xcb, 0xe7, 0xf9, 0x29, 0x37, 0xeb, 0xc4, - 0x25, 0x12, 0xd2, 0xef, 0x6a, 0xdb, 0xec, 0x15, 0xc2, 0x89, 0x4b, 0x24, 0xa4, 0xb1, 0xeb, 0xe0, - 0x15, 0x5f, 0x6a, 0x0f, 0x35, 0xd9, 0x6d, 0x9d, 0x29, 0x06, 0x15, 0x6a, 0xd1, 0xad, 0x50, 0x8b, - 0xeb, 0xf5, 0x1d, 0x5d, 0x53, 0xd6, 0x50, 0x53, 0xf4, 0x0f, 0x6c, 0x0d, 0x35, 0xf9, 0x49, 0x00, - 0xdd, 0x4b, 0x20, 0x5b, 0x72, 0x70, 0x05, 0x1f, 0x82, 0xe3, 0x91, 0x51, 0x76, 0x2c, 0x15, 0x30, - 0x62, 0xd2, 0x11, 0x56, 0x2d, 0x5c, 0x4c, 0x79, 0x16, 0xce, 0x12, 0x76, 0x03, 0x18, 0x00, 0xaf, - 0xb3, 0x94, 0x10, 0x89, 0x80, 0x7b, 0xa6, 0x8d, 0xd4, 0x8a, 0xe1, 0x27, 0xda, 0x43, 0xab, 0x79, - 0xf7, 0x59, 0x4a, 0xe9, 0xb4, 0x9b, 0x5f, 0x68, 0x9e, 0x0e, 0x17, 0x0e, 0xb1, 0xe3, 0x44, 0x5e, - 0xa6, 0x99, 0x0e, 0x55, 0x10, 0xd1, 0xf3, 0x45, 0x84, 0x7f, 0x08, 0x66, 0x23, 0x5b, 0x1e, 0xbe, - 0x51, 0x3f, 0x39, 0x02, 0xe6, 0xda, 0x6c, 0xe1, 0xff, 0x95, 0x58, 0x26, 0x70, 0xe9, 0xcb, 0x84, - 0x78, 0x7c, 0x65, 0xba, 0x8c, 0x2f, 0x98, 0x05, 0xc3, 0xb4, 0xf0, 0xa2, 0x91, 0x39, 0x48, 0x2d, - 0x74, 0x07, 0xe0, 0x15, 0x30, 0x64, 0x39, 0x0f, 0xcc, 0x10, 0xd5, 0xe6, 0xbc, 0x13, 0x1d, 0x7f, - 0x7a, 0x9e, 0x9f, 0x76, 0x5b, 0x24, 0xa2, 0xee, 0x15, 0x35, 0x2c, 0xd4, 0x64, 0x7b, 0xb7, 0x78, - 0x07, 0x55, 0x65, 0xa5, 0xb9, 0x82, 0x94, 0x2c, 0x27, 0xd2, 0x25, 0xf0, 0x3c, 0x98, 0xf0, 0xb5, - 0x72, 0xd1, 0x87, 0xe9, 0xe3, 0x76, 0xd4, 0x1b, 0xa5, 0x05, 0x1d, 0xdc, 0x06, 0x59, 0x5f, 0x4c, - 0xc1, 0xb5, 0x9a, 0x46, 0x88, 0x86, 0x0d, 0x89, 0xee, 0x3a, 0x42, 0x77, 0x3d, 0x9b, 0x62, 0x57, - 0xf1, 0xa4, 0x07, 0x52, 0xf6, 0x31, 0x44, 0x47, 0x8b, 0x6d, 0x90, 0xf5, 0x5d, 0x1b, 0x87, 0x3f, - 0xd2, 0x05, 0xbc, 0x07, 0x12, 0x83, 0x5f, 0x03, 0xe3, 0x2a, 0x22, 0x8a, 0xa5, 0x99, 0x4e, 0x5b, - 0x90, 0x1d, 0xa5, 0x9e, 0x3f, 0x5b, 0x64, 0x0d, 0xa5, 0xd7, 0x32, 0xb2, 0x16, 0xb2, 0xb8, 0x12, - 0x88, 0xb2, 0x9b, 0x16, 0x5e, 0x0d, 0xb7, 0xc1, 0x29, 0x5f, 0x57, 0x6c, 0x22, 0x8b, 0x16, 0xb8, - 0x5e, 0x3c, 0x8c, 0x51, 0x65, 0xcf, 0x7c, 0xfe, 0xf1, 0xe5, 0xd3, 0x0c, 0xdd, 0x8f, 0x1f, 0x16, - 0x07, 0x1b, 0xb6, 0xa5, 0x19, 0x55, 0x71, 0xca, 0xc3, 0xb8, 0xc7, 0x20, 0xbc, 0x30, 0x39, 0x09, - 0x46, 0xbe, 0x27, 0x6b, 0x3a, 0x52, 0xb3, 0x60, 0x8e, 0x2b, 0x8c, 0x8a, 0xec, 0x0b, 0x5e, 0x05, - 0x23, 0x4e, 0x0f, 0x59, 0x27, 0xd9, 0xf1, 0x39, 0xae, 0x30, 0xb1, 0xc4, 0xb7, 0x53, 0xbf, 0x84, - 0x0d, 0x75, 0x83, 0x4a, 0x8a, 0x6c, 0x05, 0xdc, 0x04, 0x7e, 0x34, 0x4a, 0x36, 0xde, 0x43, 0x06, - 0xc9, 0xbe, 0x42, 0x15, 0xbd, 0xc8, 0xbc, 0x7a, 0xa2, 0xd5, 0xab, 0x15, 0xc3, 0xfe, 0xfc, 0xe3, - 0xcb, 0x80, 0x6d, 0x52, 0x31, 0x6c, 0xfa, 0xe2, 0x52, 0x8c, 0x4d, 0x0a, 0xe1, 0x84, 0x8e, 0x8f, - 0xea, 0x86, 0xce, 0x51, 0x37, 0x74, 0xbc, 0x51, 0x37, 0x74, 0xbe, 0x06, 0xa6, 0xd8, 0xe5, 0x46, - 0x44, 0x52, 0xea, 0x96, 0xe5, 0xf4, 0x28, 0xc8, 0xc4, 0xca, 0x6e, 0x76, 0x82, 0x5a, 0x78, 0xc2, - 0x9f, 0x2e, 0xbb, 0xb3, 0x37, 0x9d, 0x49, 0xa7, 0x67, 0xcc, 0xb7, 0xbd, 0xf6, 0x2c, 0xbb, 0x20, - 0x00, 0x82, 0xc4, 0xc1, 0x5e, 0xb5, 0x9b, 0xa9, 0x32, 0x69, 0xa7, 0xdb, 0x2e, 0x86, 0x80, 0xf9, - 0x7d, 0xf6, 0xee, 0x46, 0x9b, 0x69, 0x5f, 0xf6, 0xb6, 0x4c, 0x36, 0x31, 0xfb, 0xf2, 0x8a, 0xcf, - 0x3e, 0xb3, 0x05, 0x2f, 0x83, 0xc5, 0x2e, 0xb6, 0x64, 0xee, 0xb8, 0x04, 0x60, 0x70, 0x4b, 0x59, - 0x3e, 0xf4, 0x32, 0xac, 0xff, 0x48, 0xba, 0x05, 0x82, 0x4a, 0x7b, 0x87, 0x8b, 0xc9, 0xdd, 0x48, - 0xf4, 0xfa, 0xfc, 0x7f, 0x74, 0x51, 0x7c, 0x15, 0x5c, 0x4a, 0xa7, 0x2d, 0x73, 0xc6, 0x9b, 0x2c, - 0x29, 0x72, 0xe9, 0xf3, 0x07, 0x5d, 0xc0, 0xf3, 0xec, 0x2d, 0x28, 0xe9, 0x58, 0xd9, 0x23, 0xf7, - 0x0d, 0x5b, 0xd3, 0xef, 0xa2, 0xc7, 0x6e, 0x54, 0x7a, 0xaf, 0xfa, 0x16, 0x6b, 0xbb, 0x92, 0x65, - 0x98, 0x06, 0x6f, 0x80, 0xa9, 0x1d, 0x3a, 0x2f, 0xd5, 0x1d, 0x01, 0x89, 0x36, 0x06, 0x6e, 0xe4, - 0x73, 0xb4, 0xe0, 0x9c, 0xdc, 0x49, 0x58, 0xce, 0x2f, 0xb3, 0x26, 0xa9, 0xec, 0xdb, 0xbe, 0x6a, - 0xe1, 0x5a, 0x99, 0xf5, 0xf2, 0xde, 0x69, 0x44, 0xfa, 0x7d, 0x2e, 0xda, 0xef, 0xf3, 0xab, 0xe0, - 0xec, 0x81, 0x10, 0x41, 0x07, 0x14, 0xf6, 0x39, 0x17, 0xf7, 0xf9, 0xd2, 0x87, 0xe7, 0xc0, 0x30, - 0x05, 0x82, 0xbf, 0xcc, 0x80, 0xc9, 0x24, 0xae, 0x0b, 0xde, 0xe8, 0xfe, 0xba, 0x45, 0x59, 0xb8, - 0xdc, 0x72, 0x1f, 0x08, 0xae, 0x21, 0xfc, 0x8f, 0xb8, 0xef, 0x7f, 0xf1, 0xb7, 0x9f, 0x66, 0x7e, - 0xc0, 0x6d, 0x95, 0xe0, 0x8d, 0xce, 0x5c, 0xac, 0x6f, 0x34, 0x23, 0xd4, 0x84, 0x27, 0x21, 0x37, - 0x3c, 0x85, 0xd7, 0x7a, 0x42, 0x60, 0x57, 0xe3, 0x29, 0xfc, 0x82, 0x63, 0x25, 0x5f, 0xf4, 0xee, - 0xc2, 0xeb, 0xdd, 0xdb, 0x19, 0xe1, 0xf4, 0x72, 0x37, 0x7a, 0x07, 0x60, 0x7e, 0xba, 0x42, 0xdd, - 0xf4, 0x3a, 0x5c, 0xec, 0xc2, 0x42, 0x97, 0xed, 0x83, 0xef, 0x67, 0x40, 0xb6, 0x0d, 0x85, 0x47, - 0xe0, 0x9d, 0x1e, 0x35, 0x4b, 0x64, 0x0b, 0x73, 0xef, 0x1c, 0x12, 0x1a, 0x33, 0xfa, 0x36, 0x35, - 0xba, 0xbb, 0xc0, 0x60, 0x42, 0x0e, 0xa0, 0xe4, 0x13, 0x71, 0xf0, 0xbf, 0x1c, 0x98, 0x4a, 0x66, - 0x04, 0x09, 0x5c, 0xeb, 0x59, 0xe9, 0x56, 0xea, 0x31, 0x77, 0xe7, 0x70, 0xc0, 0x98, 0x03, 0x6e, - 0x51, 0x07, 0x2c, 0xc3, 0xeb, 0x3d, 0x38, 0x00, 0x9b, 0x21, 0xfb, 0xff, 0xe5, 0x11, 0x2a, 0x89, - 0xfc, 0x15, 0x5c, 0x4d, 0xaf, 0xf5, 0x41, 0x74, 0x5d, 0xee, 0x56, 0xdf, 0x38, 0xcc, 0xf0, 0x65, - 0x6a, 0xf8, 0xd7, 0xe1, 0x95, 0x14, 0x3f, 0xcf, 0xf8, 0x5c, 0x65, 0xa4, 0x55, 0x4c, 0x30, 0x39, - 0xdc, 0x9f, 0xf4, 0x64, 0x72, 0x02, 0x43, 0xd7, 0x93, 0xc9, 0x49, 0xdc, 0x59, 0x6f, 0x26, 0x47, - 0xde, 0x6d, 0xf8, 0x7b, 0x8e, 0x35, 0xb2, 0x11, 0xda, 0x0c, 0xbe, 0x9d, 0x5e, 0xc5, 0x24, 0x36, - 0x2e, 0x77, 0xbd, 0xe7, 0xf5, 0xcc, 0xb4, 0xb7, 0xa8, 0x69, 0x4b, 0x70, 0xa1, 0xb3, 0x69, 0x36, - 0x03, 0x70, 0x7f, 0x76, 0x81, 0x3f, 0xcb, 0xb0, 0xf7, 0xf0, 0x60, 0x1e, 0x0c, 0xde, 0x4b, 0xaf, - 0x62, 0x2a, 0xfe, 0x2d, 0xb7, 0x7e, 0x78, 0x80, 0xcc, 0x09, 0x6b, 0xd4, 0x09, 0x37, 0x61, 0xb9, - 0xb3, 0x13, 0x2c, 0x1f, 0x31, 0x88, 0x69, 0x8b, 0x62, 0x4a, 0x2e, 0xaf, 0x07, 0xff, 0xd1, 0xc2, - 0xdb, 0x45, 0x49, 0x24, 0x02, 0xbb, 0x78, 0x9b, 0xdb, 0x90, 0x83, 0xb9, 0x52, 0x3f, 0x10, 0xcc, - 0xea, 0x12, 0xb5, 0xfa, 0x1b, 0xf0, 0x6a, 0x67, 0xab, 0x3d, 0x5a, 0x50, 0x8a, 0x3f, 0x60, 0x9f, - 0x64, 0xd8, 0x6f, 0x50, 0x29, 0xd8, 0x33, 0xb8, 0x99, 0x5e, 0xe9, 0xf4, 0x04, 0x60, 0xee, 0xfe, - 0x21, 0xa3, 0x32, 0xef, 0x54, 0xa9, 0x77, 0xe4, 0xad, 0x45, 0x28, 0x74, 0xf6, 0x4f, 0xb4, 0xd4, - 0xb9, 0x94, 0x66, 0x81, 0x5f, 0xd9, 0xfc, 0x9a, 0x03, 0xe3, 0x21, 0x32, 0x0b, 0xbe, 0xd9, 0xc5, - 0xd1, 0x86, 0x49, 0xb1, 0xdc, 0x5b, 0xdd, 0x2f, 0x64, 0xb6, 0x2e, 0x50, 0x5b, 0xe7, 0x61, 0x21, - 0x45, 0x24, 0xb8, 0x4a, 0xfe, 0x39, 0x13, 0x2b, 0x86, 0x93, 0x19, 0xab, 0x6e, 0x2e, 0x7f, 0x2a, - 0xa6, 0xad, 0x9b, 0xcb, 0x9f, 0x8e, 0x4c, 0xe3, 0x9f, 0xb9, 0x65, 0xee, 0x87, 0xdc, 0x56, 0xaa, - 0x04, 0x80, 0x1d, 0x20, 0x49, 0x33, 0xa4, 0xa0, 0x95, 0x8d, 0x1d, 0xff, 0x8d, 0x5e, 0x41, 0xfc, - 0x90, 0xf8, 0x4d, 0x06, 0x5c, 0x48, 0xdd, 0xa8, 0xc2, 0xfb, 0xbd, 0x56, 0xb0, 0x07, 0xf6, 0xda, - 0xb9, 0x07, 0x87, 0x0d, 0xcb, 0xfc, 0xbd, 0x45, 0xdd, 0xbd, 0x09, 0xc5, 0xae, 0xcb, 0x65, 0xc9, - 0x44, 0x56, 0xe0, 0x31, 0xe1, 0x49, 0xbc, 0x33, 0x7e, 0x0a, 0x7f, 0x3c, 0x08, 0xce, 0xa5, 0xe9, - 0x67, 0xe1, 0x7a, 0x1f, 0xd5, 0x50, 0x62, 0x23, 0x9f, 0x7b, 0xf7, 0x10, 0x11, 0x99, 0xa7, 0x3e, - 0x71, 0x23, 0xf3, 0x77, 0xdc, 0xd6, 0x36, 0x7c, 0xaf, 0x1b, 0x6f, 0x45, 0xc9, 0xbe, 0x68, 0x78, - 0x26, 0xb9, 0xed, 0x5b, 0x7d, 0x81, 0x7b, 0x61, 0x9b, 0x84, 0xfc, 0xdb, 0x4c, 0xac, 0xb8, 0x0f, - 0xe5, 0x86, 0x72, 0x3f, 0x9c, 0x92, 0xe7, 0xf6, 0x95, 0xfe, 0x40, 0x7a, 0xcb, 0x01, 0xbe, 0x33, - 0xfa, 0xc9, 0x01, 0xc9, 0x20, 0x7e, 0x0e, 0xf8, 0x27, 0xc7, 0x7e, 0x85, 0x4d, 0x62, 0x43, 0x60, - 0x17, 0x7c, 0xdc, 0x01, 0x8c, 0x4b, 0x6e, 0xb5, 0x5f, 0x98, 0xee, 0x0b, 0xe4, 0x36, 0xe4, 0x0d, - 0xfc, 0x37, 0x17, 0xfb, 0xe7, 0x9a, 0x28, 0xbd, 0x02, 0x6f, 0x75, 0x7f, 0xd0, 0x89, 0x1c, 0x4f, - 0xee, 0x76, 0xff, 0x40, 0xdd, 0x5b, 0x1d, 0x0a, 0x0e, 0xe1, 0x89, 0x4f, 0x31, 0x3d, 0x2d, 0x7d, - 0xf3, 0xd3, 0x17, 0xb3, 0xdc, 0x67, 0x2f, 0x66, 0xb9, 0xbf, 0xbe, 0x98, 0xe5, 0x9e, 0xbd, 0x9c, - 0x1d, 0xf8, 0xec, 0xe5, 0xec, 0xc0, 0x1f, 0x5f, 0xce, 0x0e, 0x6c, 0x5d, 0xab, 0x6a, 0xf6, 0x6e, - 0x7d, 0xa7, 0xa8, 0xe0, 0x1a, 0xfb, 0x27, 0xad, 0xd0, 0x2e, 0x97, 0xfd, 0x5d, 0x1a, 0x6f, 0x08, - 0x8f, 0x63, 0x65, 0x7a, 0xd3, 0x44, 0x64, 0x67, 0x84, 0xfe, 0x10, 0xfe, 0xfa, 0xff, 0x02, 0x00, - 0x00, 0xff, 0xff, 0x69, 0x3e, 0x82, 0x9f, 0x44, 0x27, 0x00, 0x00, + // 2547 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xdb, 0x6f, 0x1c, 0x49, + 0xd5, 0x77, 0x8f, 0x2f, 0xb1, 0xcb, 0x89, 0xb3, 0x5b, 0xb9, 0x4d, 0xc6, 0x8e, 0xc7, 0xe9, 0x6c, + 0xbe, 0xcf, 0x71, 0x92, 0x19, 0xdb, 0xab, 0x65, 0x37, 0x81, 0x6c, 0xe2, 0x19, 0xc7, 0xd9, 0x21, + 0x37, 0x6f, 0xc7, 0x09, 0xc8, 0xab, 0xd0, 0x69, 0x77, 0x17, 0xe3, 0xc6, 0x3d, 0x5d, 0xed, 0xae, + 0x9a, 0x49, 0x46, 0x51, 0x24, 0x6e, 0x0f, 0x61, 0x41, 0x10, 0x84, 0x90, 0x78, 0xdc, 0x17, 0x24, + 0x1e, 0x90, 0x90, 0xd0, 0x0a, 0xc4, 0xdb, 0x3e, 0xee, 0x1b, 0xcb, 0xee, 0x0b, 0x02, 0x29, 0xa0, + 0x84, 0x07, 0x84, 0x84, 0x84, 0x16, 0xfe, 0x00, 0xd4, 0xd5, 0xd5, 0xd7, 0xe9, 0x19, 0xf7, 0x5c, + 0x1e, 0x78, 0x73, 0x57, 0x9d, 0xfa, 0xd5, 0x39, 0xa7, 0xce, 0x39, 0x75, 0xea, 0xe7, 0x01, 0x45, + 0xdd, 0xa4, 0xc8, 0x56, 0xb7, 0x15, 0xdd, 0x94, 0x09, 0x52, 0xeb, 0xb6, 0x4e, 0x9b, 0x45, 0x55, + 0x6d, 0x14, 0x2d, 0x1b, 0x37, 0x74, 0x0d, 0xd9, 0xc5, 0xc6, 0x52, 0x71, 0xb7, 0x8e, 0xec, 0x66, + 0xc1, 0xb2, 0x31, 0xc5, 0xf0, 0x54, 0xc2, 0x82, 0x82, 0xaa, 0x36, 0x0a, 0xde, 0x82, 0x42, 0x63, + 0x29, 0x37, 0x53, 0xc5, 0xb8, 0x6a, 0xa0, 0xa2, 0x62, 0xe9, 0x45, 0xc5, 0x34, 0x31, 0x55, 0xa8, + 0x8e, 0x4d, 0xe2, 0x42, 0xe4, 0x0e, 0x57, 0x71, 0x15, 0xb3, 0x3f, 0x8b, 0xce, 0x5f, 0x7c, 0x34, + 0xcf, 0xd7, 0xb0, 0xaf, 0xad, 0xfa, 0xd7, 0x8b, 0x54, 0xaf, 0x21, 0x42, 0x95, 0x9a, 0xc5, 0x05, + 0x96, 0xd3, 0xa8, 0xea, 0x6b, 0xe1, 0xae, 0x59, 0x6c, 0xb7, 0xa6, 0xb1, 0x54, 0x24, 0xdb, 0x8a, + 0x8d, 0x34, 0x59, 0xc5, 0x26, 0xa9, 0xd7, 0xfc, 0x15, 0xa7, 0x3b, 0xac, 0x78, 0xa8, 0xdb, 0x88, + 0x8b, 0xcd, 0x50, 0x64, 0x6a, 0xc8, 0xae, 0xe9, 0x26, 0x2d, 0xaa, 0x76, 0xd3, 0xa2, 0xb8, 0xb8, + 0x83, 0x9a, 0x9e, 0x85, 0xc7, 0x55, 0x4c, 0x6a, 0x98, 0xc8, 0xae, 0x91, 0xee, 0x07, 0x9f, 0x7a, + 0xcd, 0xfd, 0x2a, 0x12, 0xaa, 0xec, 0xe8, 0x66, 0xb5, 0xd8, 0x58, 0xda, 0x42, 0x54, 0x59, 0xf2, + 0xbe, 0x5d, 0x29, 0xf1, 0x3e, 0x98, 0x7e, 0xd7, 0x71, 0x7a, 0x99, 0x2b, 0x77, 0x0d, 0x99, 0x88, + 0xe8, 0x44, 0x42, 0xbb, 0x75, 0x44, 0x28, 0x3c, 0x01, 0xc6, 0x5d, 0x0d, 0x75, 0x2d, 0x2b, 0xcc, + 0x09, 0xf3, 0x13, 0xa5, 0x4c, 0x56, 0x90, 0xf6, 0xb1, 0xb1, 0x8a, 0x06, 0xf3, 0x60, 0xd2, 0xb3, + 0xca, 0x91, 0xc8, 0x38, 0x12, 0x12, 0xf0, 0x86, 0x2a, 0x9a, 0xf8, 0x18, 0xcc, 0x24, 0xc3, 0x13, + 0x0b, 0x9b, 0x04, 0xc1, 0xf7, 0xc0, 0x81, 0xaa, 0x3b, 0x24, 0x13, 0xaa, 0x50, 0xc4, 0x36, 0x99, + 0x5c, 0x5e, 0x2c, 0xb4, 0x3b, 0xfc, 0xc6, 0x52, 0x21, 0x86, 0x75, 0xc7, 0x59, 0x57, 0x1a, 0xf9, + 0xf8, 0x79, 0x7e, 0x48, 0xda, 0x5f, 0x0d, 0x8d, 0x89, 0x33, 0x20, 0x17, 0xd9, 0xbc, 0xec, 0xc0, + 0x79, 0xa6, 0x89, 0x4a, 0xcc, 0x72, 0x6f, 0x96, 0x6b, 0x56, 0x02, 0x63, 0x6c, 0x7b, 0x92, 0x15, + 0xe6, 0x86, 0xe7, 0x27, 0x97, 0x17, 0x0a, 0x29, 0xe2, 0xb1, 0xc0, 0x40, 0x24, 0xbe, 0x52, 0x3c, + 0x03, 0xfe, 0xbf, 0x75, 0x8b, 0x3b, 0x54, 0xb1, 0xe9, 0xba, 0x8d, 0x2d, 0x4c, 0x14, 0xc3, 0xd7, + 0xe6, 0x07, 0x02, 0x98, 0xdf, 0x5b, 0x96, 0xeb, 0xf6, 0x00, 0x4c, 0x58, 0xde, 0x20, 0xf7, 0xd8, + 0xdb, 0xe9, 0xd4, 0xe3, 0xe0, 0x2b, 0x9a, 0xa6, 0x3b, 0x89, 0xe2, 0x43, 0xb3, 0x63, 0x0d, 0x40, + 0xc5, 0x85, 0x98, 0x36, 0x64, 0x63, 0x5b, 0xa1, 0x2b, 0x36, 0x5a, 0xd9, 0xc2, 0x75, 0xba, 0x81, + 0x99, 0x5e, 0x9e, 0xea, 0xb7, 0xc0, 0x99, 0x14, 0xb2, 0x5c, 0xf5, 0x93, 0x60, 0x7f, 0x28, 0x62, + 0x5c, 0xe7, 0x4e, 0x48, 0x93, 0x41, 0xc8, 0x10, 0x71, 0x1e, 0xfc, 0x5f, 0x92, 0x27, 0xb0, 0xd5, + 0xe2, 0xb4, 0xf7, 0x85, 0x64, 0x07, 0x47, 0x44, 0xf9, 0xc6, 0x72, 0xab, 0xcf, 0x2e, 0x75, 0xe5, + 0x33, 0x09, 0xd5, 0x70, 0x43, 0x31, 0xda, 0xba, 0x2c, 0x7e, 0xd8, 0x2d, 0x6e, 0xc0, 0x96, 0xa7, + 0xf7, 0xcd, 0xbd, 0xbc, 0xeb, 0x88, 0xa6, 0x77, 0xd8, 0xcf, 0x32, 0x60, 0x94, 0x59, 0x0e, 0x8f, + 0xc7, 0xd3, 0x35, 0x48, 0xd5, 0x69, 0x30, 0xa1, 0x1a, 0x3a, 0x32, 0x69, 0x90, 0xa8, 0xe3, 0xee, + 0x40, 0x45, 0x83, 0x87, 0xc0, 0x28, 0xc5, 0x96, 0x7c, 0x2b, 0x3b, 0x3c, 0x27, 0xcc, 0x1f, 0x90, + 0x46, 0x28, 0xb6, 0x6e, 0xc1, 0x05, 0x00, 0x6b, 0xba, 0x29, 0x5b, 0xf8, 0xa1, 0xb3, 0xb5, 0x29, + 0xbb, 0x12, 0x23, 0x73, 0xc2, 0xfc, 0xb0, 0x34, 0x55, 0xd3, 0xcd, 0x75, 0x67, 0xa2, 0x62, 0x6e, + 0x38, 0xb2, 0x8b, 0xe0, 0x70, 0x43, 0x31, 0x74, 0x4d, 0xa1, 0xd8, 0x26, 0x7c, 0x89, 0xaa, 0x58, + 0xd9, 0x51, 0x86, 0x07, 0x83, 0x39, 0xb6, 0xa8, 0xac, 0x58, 0x70, 0x01, 0xbc, 0xea, 0x8f, 0xca, + 0x04, 0x51, 0x26, 0x3e, 0xc6, 0xc4, 0x0f, 0xfa, 0x13, 0x77, 0x10, 0x75, 0x64, 0x67, 0xc0, 0x84, + 0x62, 0x18, 0xf8, 0xa1, 0xa1, 0x13, 0x9a, 0xdd, 0xc7, 0x1c, 0x10, 0x0c, 0xc0, 0x1c, 0x18, 0xd7, + 0x90, 0xd9, 0x64, 0x93, 0xe3, 0x6c, 0xd2, 0xff, 0x16, 0x7f, 0x29, 0x80, 0x93, 0xcc, 0xd5, 0xf7, + 0x3c, 0xc8, 0x50, 0x0a, 0xd8, 0x29, 0xab, 0xdc, 0x25, 0xf0, 0x8a, 0x17, 0x10, 0xb2, 0xa2, 0x69, + 0x36, 0x22, 0xc4, 0xf5, 0x60, 0x09, 0x7e, 0xfe, 0x3c, 0x3f, 0xd5, 0x54, 0x6a, 0xc6, 0x45, 0x91, + 0x4f, 0x88, 0xd2, 0x41, 0x4f, 0x76, 0xc5, 0x1d, 0x89, 0x17, 0xc9, 0xe1, 0x78, 0x91, 0xbc, 0x38, + 0xfe, 0xf4, 0x83, 0xfc, 0xd0, 0xdf, 0x3f, 0xc8, 0x0f, 0x89, 0xb7, 0x81, 0xd8, 0x49, 0x5b, 0x1e, + 0x12, 0x67, 0xc0, 0x2b, 0x3e, 0xa0, 0xa7, 0x8f, 0x7b, 0xda, 0x07, 0xd5, 0x90, 0xbc, 0xa3, 0x4d, + 0xab, 0xfd, 0xeb, 0x21, 0xed, 0xd2, 0xdb, 0xdf, 0xb2, 0x5f, 0x07, 0xfb, 0x63, 0x3a, 0xf4, 0x65, + 0x7f, 0x54, 0xdb, 0xc0, 0xfe, 0x96, 0xf3, 0xe0, 0xf6, 0xc7, 0x7c, 0x2f, 0x4e, 0x83, 0xe3, 0x0c, + 0x70, 0x63, 0xdb, 0xc6, 0x94, 0x1a, 0x88, 0x5d, 0x0c, 0x5e, 0x1a, 0xfe, 0x41, 0xe0, 0x17, 0x44, + 0x6c, 0x96, 0x6f, 0x93, 0x07, 0x93, 0xc4, 0x50, 0xc8, 0xb6, 0x5c, 0x43, 0x14, 0xd9, 0x6c, 0x87, + 0x61, 0x09, 0xb0, 0xa1, 0x9b, 0xce, 0x08, 0x5c, 0x06, 0x47, 0x42, 0x02, 0x32, 0x8b, 0x48, 0xc5, + 0x54, 0x11, 0x73, 0xce, 0xb0, 0x74, 0x28, 0x10, 0x5d, 0xf1, 0xa6, 0xe0, 0xd7, 0x40, 0xd6, 0x44, + 0x8f, 0xa8, 0x6c, 0x23, 0xcb, 0x40, 0xa6, 0x4e, 0xb6, 0x65, 0x55, 0x31, 0x35, 0xc7, 0x58, 0xc4, + 0x3c, 0x33, 0xb9, 0x9c, 0x2b, 0xb8, 0xfd, 0x49, 0xc1, 0xeb, 0x4f, 0x0a, 0x1b, 0x5e, 0x7f, 0x52, + 0x1a, 0x77, 0x6e, 0xb9, 0x67, 0x7f, 0xc9, 0x0b, 0xd2, 0x51, 0x07, 0x45, 0xf2, 0x40, 0xca, 0x1e, + 0x86, 0x78, 0x0e, 0x2c, 0x30, 0x93, 0x24, 0x54, 0xd5, 0x09, 0x45, 0x36, 0xd2, 0x82, 0xfa, 0xf5, + 0x50, 0xb1, 0xb5, 0x55, 0x64, 0xe2, 0x9a, 0x5f, 0x40, 0xaf, 0x82, 0xb3, 0xa9, 0xa4, 0xb9, 0x47, + 0x8e, 0x82, 0x31, 0x8d, 0x8d, 0xf0, 0x2a, 0xc4, 0xbf, 0xc4, 0x59, 0x7e, 0xcb, 0xbb, 0xb5, 0x11, + 0x69, 0xac, 0x18, 0x55, 0x56, 0xfd, 0x6d, 0xbe, 0x25, 0x80, 0x13, 0x6d, 0x04, 0xfc, 0x1b, 0x6d, + 0xca, 0x0a, 0xcf, 0x79, 0xb7, 0xee, 0x72, 0xaa, 0x12, 0x1d, 0x81, 0xe5, 0xad, 0x40, 0x0c, 0x4f, + 0x34, 0xc1, 0x81, 0x88, 0x18, 0x9c, 0x01, 0x3c, 0xc0, 0x57, 0x5b, 0x63, 0x7e, 0x15, 0xce, 0x02, + 0xe0, 0x95, 0xf6, 0xca, 0x2a, 0x3b, 0xd0, 0x11, 0x29, 0x34, 0xb2, 0x67, 0x50, 0x8b, 0xbb, 0xa0, + 0xc8, 0x4c, 0x5e, 0x31, 0x8c, 0x75, 0x45, 0xb7, 0xc9, 0x3d, 0xc5, 0x28, 0x63, 0xd3, 0x89, 0xcb, + 0x52, 0xf4, 0xba, 0xaa, 0xac, 0x0e, 0xaa, 0xd9, 0xfa, 0xb9, 0x00, 0x16, 0xd3, 0xef, 0xc9, 0x3d, + 0xbf, 0x0b, 0x5e, 0xb5, 0x14, 0xdd, 0x96, 0x1b, 0x8a, 0xe1, 0x74, 0xa8, 0x2c, 0xa1, 0xb8, 0xf3, + 0xd7, 0xd2, 0x39, 0x5f, 0xd1, 0xed, 0x60, 0x23, 0x3f, 0x61, 0xcd, 0x20, 0x94, 0xa6, 0xac, 0x88, + 0x88, 0xf8, 0x1f, 0x01, 0x9c, 0xdc, 0x73, 0x15, 0x5c, 0x6b, 0x97, 0xe5, 0xa5, 0xe9, 0xcf, 0x9f, + 0xe7, 0x8f, 0xb9, 0x55, 0x27, 0x2e, 0x91, 0x50, 0x7e, 0xd7, 0xda, 0x56, 0xaf, 0x10, 0x4e, 0x5c, + 0x22, 0xa1, 0x8c, 0x5d, 0x0e, 0x5d, 0xc4, 0x3b, 0xa8, 0xc9, 0xb3, 0x75, 0xa6, 0x10, 0xf4, 0xe7, + 0x05, 0xb7, 0x3f, 0x2f, 0xac, 0xd7, 0xb7, 0x0c, 0x5d, 0xbd, 0x8e, 0x9a, 0xc1, 0x35, 0x7d, 0x1d, + 0x35, 0xc5, 0xc3, 0x00, 0xba, 0x49, 0xa0, 0xd8, 0x4a, 0x90, 0x82, 0x0f, 0xc0, 0xa1, 0xc8, 0x28, + 0x3f, 0x96, 0x0a, 0x18, 0xb3, 0xd8, 0x08, 0xef, 0x55, 0xce, 0xa6, 0x3c, 0x0b, 0x67, 0x09, 0xcf, + 0x00, 0x0e, 0x20, 0x1a, 0xbc, 0x24, 0x44, 0x22, 0xe0, 0xb6, 0x45, 0x91, 0x56, 0x31, 0xfd, 0x42, + 0x3b, 0xb0, 0x8e, 0x7f, 0x97, 0x97, 0x94, 0xbd, 0x76, 0xf3, 0xdb, 0xec, 0x13, 0xe1, 0xc6, 0x21, + 0x76, 0x9c, 0xc8, 0xab, 0x34, 0xd3, 0xa1, 0x0e, 0x22, 0x7a, 0xbe, 0x88, 0x88, 0x0f, 0xc0, 0x6c, + 0x64, 0xcb, 0xc1, 0x1b, 0xf5, 0xe3, 0x7d, 0x60, 0xae, 0xcd, 0x16, 0xfe, 0x5f, 0x89, 0x6d, 0x82, + 0x90, 0xbe, 0x4d, 0x88, 0xc7, 0x57, 0xa6, 0xcb, 0xf8, 0x82, 0x59, 0x30, 0xca, 0x1a, 0x2f, 0x16, + 0x99, 0xc3, 0xcc, 0x42, 0x77, 0x00, 0x5e, 0x00, 0x23, 0xb6, 0x73, 0xc1, 0x8c, 0x30, 0x6d, 0x4e, + 0x3b, 0xd1, 0xf1, 0xa7, 0xe7, 0xf9, 0x69, 0xf7, 0x81, 0x48, 0xb4, 0x9d, 0x82, 0x8e, 0x8b, 0x35, + 0x85, 0x6e, 0x17, 0x6e, 0xa0, 0xaa, 0xa2, 0x36, 0x57, 0x91, 0x9a, 0x15, 0x24, 0xb6, 0x04, 0x9e, + 0x06, 0x53, 0xbe, 0x56, 0x2e, 0xfa, 0x28, 0xbb, 0xdc, 0x0e, 0x78, 0xa3, 0xac, 0xa1, 0x83, 0xf7, + 0x41, 0xd6, 0x17, 0x53, 0x71, 0xad, 0xa6, 0x13, 0xa2, 0x63, 0x53, 0x66, 0xbb, 0x8e, 0xb1, 0x5d, + 0x4f, 0xa5, 0xd8, 0x55, 0x3a, 0xea, 0x81, 0x94, 0x7d, 0x0c, 0xc9, 0xd1, 0xe2, 0x3e, 0xc8, 0xfa, + 0xae, 0x8d, 0xc3, 0xef, 0xeb, 0x02, 0xde, 0x03, 0x89, 0xc1, 0x5f, 0x07, 0x93, 0x1a, 0x22, 0xaa, + 0xad, 0x5b, 0xce, 0xa3, 0x28, 0x3b, 0xce, 0x3c, 0x7f, 0xaa, 0xc0, 0x9f, 0xd3, 0xde, 0x83, 0x99, + 0x3f, 0xa0, 0x0b, 0xab, 0x81, 0x28, 0xcf, 0xb4, 0xf0, 0x6a, 0x78, 0x1f, 0x1c, 0xf7, 0x75, 0xc5, + 0x16, 0xb2, 0x59, 0x83, 0xeb, 0xc5, 0xc3, 0x04, 0x53, 0xf6, 0xe4, 0xa7, 0x1f, 0x9e, 0x3f, 0xc1, + 0xd1, 0xfd, 0xf8, 0xe1, 0x71, 0x70, 0x87, 0xda, 0xba, 0x59, 0x95, 0x8e, 0x79, 0x18, 0xb7, 0x39, + 0x84, 0x17, 0x26, 0x47, 0xc1, 0xd8, 0x37, 0x14, 0xdd, 0x40, 0x5a, 0x16, 0xcc, 0x09, 0xf3, 0xe3, + 0x12, 0xff, 0x82, 0x17, 0xc1, 0x98, 0xf3, 0x82, 0xae, 0x93, 0xec, 0xe4, 0x9c, 0x30, 0x3f, 0xb5, + 0x2c, 0xb6, 0x53, 0xbf, 0x84, 0x4d, 0xed, 0x0e, 0x93, 0x94, 0xf8, 0x0a, 0xb8, 0x01, 0xfc, 0x68, + 0x94, 0x29, 0xde, 0x41, 0x26, 0xc9, 0xee, 0x67, 0x8a, 0x9e, 0xe5, 0x5e, 0x3d, 0xd2, 0xea, 0xd5, + 0x8a, 0x49, 0x3f, 0xfd, 0xf0, 0x3c, 0xe0, 0x9b, 0x54, 0x4c, 0xca, 0x6e, 0x5c, 0x86, 0xb1, 0xc1, + 0x20, 0x9c, 0xd0, 0xf1, 0x51, 0xdd, 0xd0, 0x39, 0xe0, 0x86, 0x8e, 0x37, 0xea, 0x86, 0xce, 0x17, + 0xc0, 0x31, 0x9e, 0xdc, 0x88, 0xc8, 0x6a, 0xdd, 0xb6, 0x9d, 0x37, 0x0a, 0xb2, 0xb0, 0xba, 0x9d, + 0x9d, 0x62, 0x16, 0x1e, 0xf1, 0xa7, 0xcb, 0xee, 0xec, 0x55, 0x67, 0x52, 0x7c, 0x2a, 0x80, 0x7c, + 0xdb, 0xb4, 0xe7, 0xd5, 0x05, 0x01, 0x10, 0x14, 0x0e, 0x7e, 0xab, 0x5d, 0x4d, 0x55, 0x49, 0xf7, + 0xca, 0x76, 0x29, 0x04, 0x2c, 0xee, 0xf2, 0x7b, 0x37, 0x4a, 0x25, 0xf8, 0xb2, 0xef, 0x28, 0x64, + 0x03, 0xf3, 0x2f, 0xaf, 0xf9, 0xec, 0xb3, 0x5a, 0x88, 0x0a, 0x58, 0xea, 0x62, 0x4b, 0xee, 0x8e, + 0x73, 0x00, 0x06, 0x59, 0xca, 0xeb, 0xa1, 0x57, 0x61, 0xfd, 0x4b, 0xd2, 0x6d, 0x10, 0x34, 0xf6, + 0x76, 0x38, 0x9b, 0xfc, 0x1a, 0x89, 0xa6, 0xcf, 0xff, 0xc6, 0x2b, 0x4a, 0xac, 0x82, 0x73, 0xe9, + 0xb4, 0xe5, 0xce, 0x78, 0x93, 0x17, 0x45, 0x21, 0x7d, 0xfd, 0x60, 0x0b, 0x44, 0x91, 0xdf, 0x05, + 0x25, 0x03, 0xab, 0x3b, 0xe4, 0xae, 0x49, 0x75, 0xe3, 0x16, 0x7a, 0xe4, 0x46, 0xa5, 0x77, 0xab, + 0x6f, 0xf2, 0x67, 0x57, 0xb2, 0x0c, 0xd7, 0xe0, 0x0d, 0x70, 0x6c, 0x8b, 0xcd, 0xcb, 0x75, 0x47, + 0x40, 0x66, 0x0f, 0x03, 0x37, 0xf2, 0x05, 0xd6, 0x70, 0x1e, 0xde, 0x4a, 0x58, 0x2e, 0xae, 0xf0, + 0x47, 0x52, 0xd9, 0xb7, 0x7d, 0xcd, 0xc6, 0xb5, 0x32, 0x7f, 0xcb, 0x7b, 0xa7, 0x11, 0x79, 0xef, + 0x0b, 0xd1, 0xf7, 0xbe, 0xb8, 0x06, 0x4e, 0x75, 0x84, 0x08, 0x5e, 0x40, 0x61, 0x9f, 0x0b, 0x71, + 0x9f, 0x2f, 0xff, 0x6a, 0x1e, 0x8c, 0x32, 0x20, 0xf8, 0x8b, 0x0c, 0x38, 0x9c, 0xc4, 0xf4, 0xc1, + 0x2b, 0xdd, 0xa7, 0x5b, 0x94, 0x83, 0xcc, 0xad, 0xf4, 0x81, 0xe0, 0x1a, 0x22, 0xbe, 0x2f, 0x7c, + 0xfb, 0xb3, 0xbf, 0xfd, 0x24, 0xf3, 0x1d, 0x61, 0xb3, 0x04, 0xaf, 0xec, 0xcd, 0x44, 0xfb, 0x46, + 0x73, 0x3a, 0xb1, 0xf8, 0x38, 0xe4, 0x86, 0x27, 0xf0, 0x52, 0x4f, 0x08, 0x3c, 0x35, 0x9e, 0xc0, + 0xcf, 0x04, 0xde, 0xf2, 0x45, 0x73, 0x17, 0x5e, 0xee, 0xde, 0xce, 0x08, 0xa3, 0x99, 0xbb, 0xd2, + 0x3b, 0x00, 0xf7, 0xd3, 0x05, 0xe6, 0xa6, 0xd7, 0xe1, 0x52, 0x17, 0x16, 0xba, 0x5c, 0x27, 0xfc, + 0x6e, 0x06, 0x64, 0xdb, 0x10, 0x98, 0x04, 0xde, 0xe8, 0x51, 0xb3, 0x44, 0xae, 0x34, 0x77, 0x73, + 0x40, 0x68, 0xdc, 0xe8, 0xeb, 0xcc, 0xe8, 0xee, 0x02, 0x83, 0x0b, 0x39, 0x80, 0xb2, 0x4f, 0x01, + 0x3e, 0xcd, 0x08, 0xf0, 0x47, 0x19, 0x9e, 0xf9, 0x9d, 0xd8, 0x50, 0xd8, 0x83, 0x05, 0x1d, 0x18, + 0xd8, 0xdc, 0xad, 0x41, 0xc1, 0x45, 0x3c, 0x72, 0x15, 0x96, 0xd3, 0x7b, 0x84, 0xc8, 0x74, 0x5b, + 0xa1, 0xb2, 0x62, 0x23, 0x59, 0x71, 0x20, 0x65, 0x8a, 0x5d, 0xf7, 0xc0, 0x6f, 0x66, 0xc0, 0xb1, + 0x64, 0x92, 0x96, 0xc0, 0xeb, 0x3d, 0x9f, 0x64, 0x2b, 0x1b, 0x9c, 0xbb, 0x31, 0x18, 0x30, 0xee, + 0x83, 0x2f, 0x33, 0x1f, 0xac, 0xc0, 0xcb, 0x3d, 0x44, 0x05, 0xb6, 0xa2, 0x41, 0xf1, 0xfd, 0x4c, + 0xec, 0xf9, 0x90, 0x40, 0xf8, 0xf6, 0x92, 0x23, 0xed, 0x29, 0xe6, 0xdc, 0xcd, 0x01, 0xa1, 0x45, + 0xbc, 0xb1, 0x0a, 0x4b, 0xfd, 0x46, 0x04, 0xb6, 0xe0, 0xbf, 0x3c, 0xda, 0x2d, 0x91, 0xe5, 0x84, + 0x6b, 0xe9, 0x35, 0xef, 0x44, 0xea, 0xe6, 0xae, 0xf5, 0x8d, 0xc3, 0x6d, 0x5f, 0x61, 0xb6, 0x7f, + 0x11, 0x5e, 0x48, 0xf1, 0x2f, 0x4c, 0x9f, 0xd1, 0x8e, 0x10, 0x0a, 0x09, 0x26, 0x87, 0x5f, 0xb1, + 0x3d, 0x99, 0x9c, 0xc0, 0xe3, 0xf6, 0x64, 0x72, 0x12, 0xc3, 0xda, 0x9b, 0xc9, 0x91, 0xee, 0x0e, + 0xfe, 0x5e, 0xe0, 0x74, 0x47, 0x84, 0x5c, 0x85, 0x6f, 0xa7, 0x57, 0x31, 0x89, 0xb3, 0xcd, 0x5d, + 0xee, 0x79, 0x3d, 0x37, 0xed, 0x2d, 0x66, 0xda, 0x32, 0x5c, 0xdc, 0xdb, 0x34, 0xca, 0x01, 0xdc, + 0x7f, 0x4d, 0xc2, 0x9f, 0x66, 0x78, 0xd7, 0xd4, 0x99, 0x2d, 0x85, 0xb7, 0xd3, 0xab, 0x98, 0x8a, + 0xa5, 0xcd, 0xad, 0x0f, 0x0e, 0xb0, 0xfb, 0x02, 0x6f, 0xfb, 0x88, 0x41, 0x4c, 0xdb, 0x0c, 0x53, + 0x76, 0xd9, 0x5f, 0xf8, 0x8f, 0x16, 0x76, 0x37, 0x4a, 0x35, 0x12, 0xd8, 0x45, 0x07, 0xd7, 0x86, + 0x42, 0xce, 0x95, 0xfa, 0x81, 0xe0, 0x56, 0x97, 0x98, 0xd5, 0x5f, 0x82, 0x17, 0xf7, 0xb6, 0xda, + 0x23, 0x8f, 0xe5, 0x78, 0x9b, 0xf3, 0x51, 0x86, 0xff, 0xef, 0x2e, 0x05, 0xc7, 0x0a, 0x37, 0xd2, + 0x2b, 0x9d, 0x9e, 0x26, 0xce, 0xdd, 0x1d, 0x30, 0x2a, 0xf7, 0x4e, 0x95, 0x79, 0x47, 0xd9, 0x5c, + 0x82, 0xc5, 0xbd, 0xfd, 0x13, 0x6d, 0x88, 0xcf, 0xa5, 0x59, 0xe0, 0xf7, 0xbf, 0xbf, 0x16, 0xc0, + 0x64, 0x88, 0xf2, 0x84, 0x6f, 0x76, 0x71, 0xb4, 0x61, 0xea, 0x34, 0xf7, 0x56, 0xf7, 0x0b, 0xb9, + 0xad, 0x8b, 0xcc, 0xd6, 0x05, 0x38, 0x9f, 0x22, 0x12, 0x5c, 0x25, 0xff, 0x9c, 0x89, 0x3d, 0x99, + 0x92, 0x79, 0xcd, 0x6e, 0x92, 0x3f, 0x15, 0x1f, 0xdb, 0x4d, 0xf2, 0xa7, 0xa3, 0x5c, 0xc5, 0x67, + 0xee, 0x63, 0xe8, 0x7b, 0xc2, 0x66, 0xaa, 0x02, 0x80, 0x1d, 0x20, 0x59, 0x37, 0xe5, 0x80, 0xf0, + 0x88, 0x1d, 0xff, 0x95, 0x5e, 0x41, 0xfc, 0x90, 0xf8, 0x4d, 0x26, 0xf6, 0x1b, 0x82, 0x4e, 0x74, + 0x06, 0xbc, 0xdb, 0xeb, 0x3b, 0xa7, 0x23, 0x23, 0x93, 0xbb, 0x37, 0x68, 0x58, 0xee, 0xef, 0x4d, + 0xe6, 0xee, 0x0d, 0x28, 0x75, 0xfd, 0xa8, 0x92, 0x2d, 0x64, 0x07, 0x1e, 0x2b, 0x3e, 0x8e, 0xf3, + 0x27, 0x4f, 0xe0, 0x0f, 0x87, 0xc1, 0x6b, 0x69, 0x58, 0x0f, 0xb8, 0xde, 0x47, 0x37, 0x94, 0x48, + 0xf7, 0xe4, 0xde, 0x1d, 0x20, 0x22, 0xf7, 0xd4, 0x47, 0x6e, 0x64, 0xfe, 0x4e, 0xd8, 0xbc, 0x0f, + 0xdf, 0xeb, 0xc6, 0x5b, 0x51, 0x4a, 0x38, 0x1a, 0x9e, 0x49, 0x6e, 0xfb, 0x6a, 0x5f, 0xe0, 0x5e, + 0xd8, 0x26, 0x21, 0xff, 0x36, 0xfe, 0xda, 0x09, 0xd5, 0x86, 0x72, 0x3f, 0xcc, 0xa3, 0xe7, 0xf6, + 0xd5, 0xfe, 0x40, 0x7a, 0xab, 0x01, 0xbe, 0x33, 0xfa, 0xa9, 0x01, 0xc9, 0x20, 0x7e, 0x0d, 0xf8, + 0xa7, 0xc0, 0xff, 0x57, 0x9f, 0xc4, 0x99, 0xc1, 0x2e, 0x58, 0xdb, 0x0e, 0xbc, 0x5c, 0x6e, 0xad, + 0x5f, 0x98, 0xee, 0x1b, 0xe4, 0x36, 0x14, 0x1f, 0xfc, 0xb7, 0x10, 0xfb, 0x01, 0x5a, 0x94, 0x84, + 0x83, 0xd7, 0xba, 0x3f, 0xe8, 0x44, 0x26, 0x30, 0xf7, 0x4e, 0xff, 0x40, 0xdd, 0x5b, 0x1d, 0x0a, + 0x8e, 0xe2, 0x63, 0x9f, 0x88, 0x7c, 0x52, 0xfa, 0xca, 0xc7, 0x2f, 0x66, 0x85, 0x4f, 0x5e, 0xcc, + 0x0a, 0x7f, 0x7d, 0x31, 0x2b, 0x3c, 0x7b, 0x39, 0x3b, 0xf4, 0xc9, 0xcb, 0xd9, 0xa1, 0x3f, 0xbe, + 0x9c, 0x1d, 0xda, 0xbc, 0x54, 0xd5, 0xe9, 0x76, 0x7d, 0xab, 0xa0, 0xe2, 0x1a, 0xff, 0x21, 0x63, + 0x68, 0x97, 0xf3, 0xfe, 0x2e, 0x8d, 0x37, 0x8a, 0x8f, 0x62, 0x6d, 0x7a, 0xd3, 0x42, 0x64, 0x6b, + 0x8c, 0xfd, 0x5c, 0xe2, 0xf5, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x38, 0x2b, 0x5b, 0xb8, 0x68, + 0x2a, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2184,10 +2372,14 @@ type QueryClient interface { // ConsumerChains queries active consumer chains supported by the provider // chain QueryConsumerChains(ctx context.Context, in *QueryConsumerChainsRequest, opts ...grpc.CallOption) (*QueryConsumerChainsResponse, error) + // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStart` instead // QueryConsumerChainStarts queries consumer chain start proposals. QueryConsumerChainStarts(ctx context.Context, in *QueryConsumerChainStartProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStartProposalsResponse, error) + QueryConsumersThatAreAboutToStart(ctx context.Context, in *QueryConsumersThatAreAboutToStartRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStartResponse, error) + // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStop` instead // QueryConsumerChainStops queries consumer chain stop proposals. QueryConsumerChainStops(ctx context.Context, in *QueryConsumerChainStopProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStopProposalsResponse, error) + QueryConsumersThatAreAboutToStop(ctx context.Context, in *QueryConsumersThatAreAboutToStopRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStopResponse, error) // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. QueryValidatorConsumerAddr(ctx context.Context, in *QueryValidatorConsumerAddrRequest, opts ...grpc.CallOption) (*QueryValidatorConsumerAddrResponse, error) @@ -2255,6 +2447,7 @@ func (c *queryClient) QueryConsumerChains(ctx context.Context, in *QueryConsumer return out, nil } +// Deprecated: Do not use. func (c *queryClient) QueryConsumerChainStarts(ctx context.Context, in *QueryConsumerChainStartProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStartProposalsResponse, error) { out := new(QueryConsumerChainStartProposalsResponse) err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumerChainStarts", in, out, opts...) @@ -2264,6 +2457,16 @@ func (c *queryClient) QueryConsumerChainStarts(ctx context.Context, in *QueryCon return out, nil } +func (c *queryClient) QueryConsumersThatAreAboutToStart(ctx context.Context, in *QueryConsumersThatAreAboutToStartRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStartResponse, error) { + out := new(QueryConsumersThatAreAboutToStartResponse) + err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStart", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// Deprecated: Do not use. func (c *queryClient) QueryConsumerChainStops(ctx context.Context, in *QueryConsumerChainStopProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStopProposalsResponse, error) { out := new(QueryConsumerChainStopProposalsResponse) err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumerChainStops", in, out, opts...) @@ -2273,6 +2476,15 @@ func (c *queryClient) QueryConsumerChainStops(ctx context.Context, in *QueryCons return out, nil } +func (c *queryClient) QueryConsumersThatAreAboutToStop(ctx context.Context, in *QueryConsumersThatAreAboutToStopRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStopResponse, error) { + out := new(QueryConsumersThatAreAboutToStopResponse) + err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStop", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *queryClient) QueryValidatorConsumerAddr(ctx context.Context, in *QueryValidatorConsumerAddrRequest, opts ...grpc.CallOption) (*QueryValidatorConsumerAddrResponse, error) { out := new(QueryValidatorConsumerAddrResponse) err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryValidatorConsumerAddr", in, out, opts...) @@ -2398,10 +2610,14 @@ type QueryServer interface { // ConsumerChains queries active consumer chains supported by the provider // chain QueryConsumerChains(context.Context, *QueryConsumerChainsRequest) (*QueryConsumerChainsResponse, error) + // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStart` instead // QueryConsumerChainStarts queries consumer chain start proposals. QueryConsumerChainStarts(context.Context, *QueryConsumerChainStartProposalsRequest) (*QueryConsumerChainStartProposalsResponse, error) + QueryConsumersThatAreAboutToStart(context.Context, *QueryConsumersThatAreAboutToStartRequest) (*QueryConsumersThatAreAboutToStartResponse, error) + // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStop` instead // QueryConsumerChainStops queries consumer chain stop proposals. QueryConsumerChainStops(context.Context, *QueryConsumerChainStopProposalsRequest) (*QueryConsumerChainStopProposalsResponse, error) + QueryConsumersThatAreAboutToStop(context.Context, *QueryConsumersThatAreAboutToStopRequest) (*QueryConsumersThatAreAboutToStopResponse, error) // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. QueryValidatorConsumerAddr(context.Context, *QueryValidatorConsumerAddrRequest) (*QueryValidatorConsumerAddrResponse, error) @@ -2456,9 +2672,15 @@ func (*UnimplementedQueryServer) QueryConsumerChains(ctx context.Context, req *Q func (*UnimplementedQueryServer) QueryConsumerChainStarts(ctx context.Context, req *QueryConsumerChainStartProposalsRequest) (*QueryConsumerChainStartProposalsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryConsumerChainStarts not implemented") } +func (*UnimplementedQueryServer) QueryConsumersThatAreAboutToStart(ctx context.Context, req *QueryConsumersThatAreAboutToStartRequest) (*QueryConsumersThatAreAboutToStartResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryConsumersThatAreAboutToStart not implemented") +} func (*UnimplementedQueryServer) QueryConsumerChainStops(ctx context.Context, req *QueryConsumerChainStopProposalsRequest) (*QueryConsumerChainStopProposalsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryConsumerChainStops not implemented") } +func (*UnimplementedQueryServer) QueryConsumersThatAreAboutToStop(ctx context.Context, req *QueryConsumersThatAreAboutToStopRequest) (*QueryConsumersThatAreAboutToStopResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryConsumersThatAreAboutToStop not implemented") +} func (*UnimplementedQueryServer) QueryValidatorConsumerAddr(ctx context.Context, req *QueryValidatorConsumerAddrRequest) (*QueryValidatorConsumerAddrResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryValidatorConsumerAddr not implemented") } @@ -2557,6 +2779,24 @@ func _Query_QueryConsumerChainStarts_Handler(srv interface{}, ctx context.Contex return interceptor(ctx, in, info, handler) } +func _Query_QueryConsumersThatAreAboutToStart_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryConsumersThatAreAboutToStartRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).QueryConsumersThatAreAboutToStart(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStart", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).QueryConsumersThatAreAboutToStart(ctx, req.(*QueryConsumersThatAreAboutToStartRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _Query_QueryConsumerChainStops_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryConsumerChainStopProposalsRequest) if err := dec(in); err != nil { @@ -2575,6 +2815,24 @@ func _Query_QueryConsumerChainStops_Handler(srv interface{}, ctx context.Context return interceptor(ctx, in, info, handler) } +func _Query_QueryConsumersThatAreAboutToStop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryConsumersThatAreAboutToStopRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).QueryConsumersThatAreAboutToStop(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStop", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).QueryConsumersThatAreAboutToStop(ctx, req.(*QueryConsumersThatAreAboutToStopRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _Query_QueryValidatorConsumerAddr_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryValidatorConsumerAddrRequest) if err := dec(in); err != nil { @@ -2825,10 +3083,18 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "QueryConsumerChainStarts", Handler: _Query_QueryConsumerChainStarts_Handler, }, + { + MethodName: "QueryConsumersThatAreAboutToStart", + Handler: _Query_QueryConsumersThatAreAboutToStart_Handler, + }, { MethodName: "QueryConsumerChainStops", Handler: _Query_QueryConsumerChainStops_Handler, }, + { + MethodName: "QueryConsumersThatAreAboutToStop", + Handler: _Query_QueryConsumersThatAreAboutToStop_Handler, + }, { MethodName: "QueryValidatorConsumerAddr", Handler: _Query_QueryValidatorConsumerAddr_Handler, @@ -3074,7 +3340,7 @@ func (m *QueryConsumerChainStartProposalsResponse) MarshalToSizedBuffer(dAtA []b return len(dAtA) - i, nil } -func (m *QueryConsumerChainStopProposalsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryConsumersThatAreAboutToStartRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -3084,12 +3350,12 @@ func (m *QueryConsumerChainStopProposalsRequest) Marshal() (dAtA []byte, err err return dAtA[:n], nil } -func (m *QueryConsumerChainStopProposalsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryConsumersThatAreAboutToStartRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryConsumerChainStopProposalsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryConsumersThatAreAboutToStartRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -3097,7 +3363,7 @@ func (m *QueryConsumerChainStopProposalsRequest) MarshalToSizedBuffer(dAtA []byt return len(dAtA) - i, nil } -func (m *QueryConsumerChainStopProposalsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryConsumersThatAreAboutToStartResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -3107,32 +3373,29 @@ func (m *QueryConsumerChainStopProposalsResponse) Marshal() (dAtA []byte, err er return dAtA[:n], nil } -func (m *QueryConsumerChainStopProposalsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryConsumersThatAreAboutToStartResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryConsumerChainStopProposalsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryConsumersThatAreAboutToStartResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Proposals != nil { - { - size, err := m.Proposals.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) + if len(m.ConsumerIds) > 0 { + for iNdEx := len(m.ConsumerIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ConsumerIds[iNdEx]) + copy(dAtA[i:], m.ConsumerIds[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.ConsumerIds[iNdEx]))) + i-- + dAtA[i] = 0xa } - i-- - dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *Chain) Marshal() (dAtA []byte, err error) { +func (m *QueryConsumerChainStopProposalsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -3142,28 +3405,141 @@ func (m *Chain) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *Chain) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryConsumerChainStopProposalsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *Chain) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryConsumerChainStopProposalsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Denylist) > 0 { - for iNdEx := len(m.Denylist) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Denylist[iNdEx]) - copy(dAtA[i:], m.Denylist[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.Denylist[iNdEx]))) - i-- - dAtA[i] = 0x42 - } + return len(dAtA) - i, nil +} + +func (m *QueryConsumerChainStopProposalsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - if len(m.Allowlist) > 0 { - for iNdEx := len(m.Allowlist) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Allowlist[iNdEx]) + return dAtA[:n], nil +} + +func (m *QueryConsumerChainStopProposalsResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryConsumerChainStopProposalsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Proposals != nil { + { + size, err := m.Proposals.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintQuery(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *QueryConsumersThatAreAboutToStopRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryConsumersThatAreAboutToStopRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryConsumersThatAreAboutToStopRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + +func (m *QueryConsumersThatAreAboutToStopResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *QueryConsumersThatAreAboutToStopResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *QueryConsumersThatAreAboutToStopResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ConsumerIds) > 0 { + for iNdEx := len(m.ConsumerIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ConsumerIds[iNdEx]) + copy(dAtA[i:], m.ConsumerIds[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.ConsumerIds[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *Chain) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Chain) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Chain) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denylist) > 0 { + for iNdEx := len(m.Denylist) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Denylist[iNdEx]) + copy(dAtA[i:], m.Denylist[iNdEx]) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denylist[iNdEx]))) + i-- + dAtA[i] = 0x42 + } + } + if len(m.Allowlist) > 0 { + for iNdEx := len(m.Allowlist) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Allowlist[iNdEx]) copy(dAtA[i:], m.Allowlist[iNdEx]) i = encodeVarintQuery(dAtA, i, uint64(len(m.Allowlist[iNdEx]))) i-- @@ -4372,6 +4748,30 @@ func (m *QueryConsumerChainStartProposalsResponse) Size() (n int) { return n } +func (m *QueryConsumersThatAreAboutToStartRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryConsumersThatAreAboutToStartResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ConsumerIds) > 0 { + for _, s := range m.ConsumerIds { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + func (m *QueryConsumerChainStopProposalsRequest) Size() (n int) { if m == nil { return 0 @@ -4394,6 +4794,30 @@ func (m *QueryConsumerChainStopProposalsResponse) Size() (n int) { return n } +func (m *QueryConsumersThatAreAboutToStopRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *QueryConsumersThatAreAboutToStopResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ConsumerIds) > 0 { + for _, s := range m.ConsumerIds { + l = len(s) + n += 1 + l + sovQuery(uint64(l)) + } + } + return n +} + func (m *Chain) Size() (n int) { if m == nil { return 0 @@ -5363,6 +5787,138 @@ func (m *QueryConsumerChainStartProposalsResponse) Unmarshal(dAtA []byte) error } return nil } +func (m *QueryConsumersThatAreAboutToStartRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryConsumersThatAreAboutToStartResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConsumerIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConsumerIds = append(m.ConsumerIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *QueryConsumerChainStopProposalsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -5499,6 +6055,138 @@ func (m *QueryConsumerChainStopProposalsResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *QueryConsumersThatAreAboutToStopRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *QueryConsumersThatAreAboutToStopResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConsumerIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConsumerIds = append(m.ConsumerIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Chain) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/ccv/provider/types/query.pb.gw.go b/x/ccv/provider/types/query.pb.gw.go index a533712da9..caa72546af 100644 --- a/x/ccv/provider/types/query.pb.gw.go +++ b/x/ccv/provider/types/query.pb.gw.go @@ -213,6 +213,24 @@ func local_request_Query_QueryConsumerChainStarts_0(ctx context.Context, marshal } +func request_Query_QueryConsumersThatAreAboutToStart_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryConsumersThatAreAboutToStartRequest + var metadata runtime.ServerMetadata + + msg, err := client.QueryConsumersThatAreAboutToStart(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_Query_QueryConsumersThatAreAboutToStart_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryConsumersThatAreAboutToStartRequest + var metadata runtime.ServerMetadata + + msg, err := server.QueryConsumersThatAreAboutToStart(ctx, &protoReq) + return msg, metadata, err + +} + func request_Query_QueryConsumerChainStops_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq QueryConsumerChainStopProposalsRequest var metadata runtime.ServerMetadata @@ -231,6 +249,24 @@ func local_request_Query_QueryConsumerChainStops_0(ctx context.Context, marshale } +func request_Query_QueryConsumersThatAreAboutToStop_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryConsumersThatAreAboutToStopRequest + var metadata runtime.ServerMetadata + + msg, err := client.QueryConsumersThatAreAboutToStop(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_Query_QueryConsumersThatAreAboutToStop_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq QueryConsumersThatAreAboutToStopRequest + var metadata runtime.ServerMetadata + + msg, err := server.QueryConsumersThatAreAboutToStop(ctx, &protoReq) + return msg, metadata, err + +} + var ( filter_Query_QueryValidatorConsumerAddr_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) @@ -1219,6 +1255,29 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) + mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStart_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_Query_QueryConsumersThatAreAboutToStart_0(rctx, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_QueryConsumersThatAreAboutToStart_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Query_QueryConsumerChainStops_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1242,6 +1301,29 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) + mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStop_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_Query_QueryConsumersThatAreAboutToStop_0(rctx, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_QueryConsumersThatAreAboutToStop_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Query_QueryValidatorConsumerAddr_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1754,6 +1836,26 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) + mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStart_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_Query_QueryConsumersThatAreAboutToStart_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_QueryConsumersThatAreAboutToStart_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Query_QueryConsumerChainStops_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1774,6 +1876,26 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) + mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStop_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_Query_QueryConsumersThatAreAboutToStop_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Query_QueryConsumersThatAreAboutToStop_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Query_QueryValidatorConsumerAddr_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -2126,8 +2248,12 @@ var ( pattern_Query_QueryConsumerChainStarts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumer_chain_start_proposals"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_QueryConsumersThatAreAboutToStart_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumers_that_are_about_to_start"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_QueryConsumerChainStops_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumer_chain_stop_proposals"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_QueryConsumersThatAreAboutToStop_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumers_that_are_about_to_stop"}, "", runtime.AssumeColonVerbOpt(false))) + pattern_Query_QueryValidatorConsumerAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "validator_consumer_addr"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_QueryValidatorProviderAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "validator_provider_addr"}, "", runtime.AssumeColonVerbOpt(false))) @@ -2172,8 +2298,12 @@ var ( forward_Query_QueryConsumerChainStarts_0 = runtime.ForwardResponseMessage + forward_Query_QueryConsumersThatAreAboutToStart_0 = runtime.ForwardResponseMessage + forward_Query_QueryConsumerChainStops_0 = runtime.ForwardResponseMessage + forward_Query_QueryConsumersThatAreAboutToStop_0 = runtime.ForwardResponseMessage + forward_Query_QueryValidatorConsumerAddr_0 = runtime.ForwardResponseMessage forward_Query_QueryValidatorProviderAddr_0 = runtime.ForwardResponseMessage From 7591a530e74e5bfabb17b54303f4978dcfec2870 Mon Sep 17 00:00:00 2001 From: insumity Date: Wed, 28 Aug 2024 13:27:42 +0200 Subject: [PATCH 2/3] took into account comments --- .../ccv/provider/v1/genesis.proto | 8 +- .../ccv/provider/v1/query.proto | 45 +- tests/integration/provider_gov_hooks.go | 127 -- x/ccv/provider/client/cli/query.go | 60 +- x/ccv/provider/keeper/grpc_query.go | 65 +- x/ccv/provider/keeper/grpc_query_test.go | 4 - x/ccv/provider/keeper/hooks.go | 45 - x/ccv/provider/keeper/partial_set_security.go | 24 +- x/ccv/provider/migrations/migrator.go | 6 - x/ccv/provider/migrations/v8/migrations.go | 181 --- x/ccv/provider/types/genesis.pb.go | 111 +- x/ccv/provider/types/query.pb.go | 1064 +++-------------- x/ccv/provider/types/query.pb.gw.go | 130 -- 13 files changed, 278 insertions(+), 1592 deletions(-) delete mode 100644 tests/integration/provider_gov_hooks.go diff --git a/proto/interchain_security/ccv/provider/v1/genesis.proto b/proto/interchain_security/ccv/provider/v1/genesis.proto index 34c0daf633..9eba16c2bd 100644 --- a/proto/interchain_security/ccv/provider/v1/genesis.proto +++ b/proto/interchain_security/ccv/provider/v1/genesis.proto @@ -36,12 +36,12 @@ message GenesisState { // empty for a new chain repeated ValsetUpdateIdToHeight valset_update_id_to_height = 5 [ (gogoproto.nullable) = false ]; - // empty for a new chain + // [DEPRECATED] empty for a new chain repeated ConsumerAdditionProposal consumer_addition_proposals = 6 - [ (gogoproto.nullable) = false ]; - // empty for a new chain + [ deprecated = true, (gogoproto.nullable) = false ]; + // [DEPRECATED] empty for a new chain repeated ConsumerRemovalProposal consumer_removal_proposals = 7 - [ (gogoproto.nullable) = false ]; + [ deprecated = true, (gogoproto.nullable) = false ]; Params params = 8 [ (gogoproto.nullable) = false ]; // empty for a new chain repeated ValidatorConsumerPubKey validator_consumer_pubkeys = 9 diff --git a/proto/interchain_security/ccv/provider/v1/query.proto b/proto/interchain_security/ccv/provider/v1/query.proto index d0e1862a6f..cf2fc9bbd6 100644 --- a/proto/interchain_security/ccv/provider/v1/query.proto +++ b/proto/interchain_security/ccv/provider/v1/query.proto @@ -35,8 +35,6 @@ service Query { "/interchain_security/ccv/provider/consumer_chains"; } - // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStart` instead - // QueryConsumerChainStarts queries consumer chain start proposals. rpc QueryConsumerChainStarts(QueryConsumerChainStartProposalsRequest) returns (QueryConsumerChainStartProposalsResponse) { option deprecated = true; @@ -44,14 +42,6 @@ service Query { "/interchain_security/ccv/provider/consumer_chain_start_proposals"; } - rpc QueryConsumersThatAreAboutToStart(QueryConsumersThatAreAboutToStartRequest) - returns (QueryConsumersThatAreAboutToStartResponse) { - option (google.api.http).get = - "/interchain_security/ccv/provider/consumers_that_are_about_to_start"; - } - - // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStop` instead - // QueryConsumerChainStops queries consumer chain stop proposals. rpc QueryConsumerChainStops(QueryConsumerChainStopProposalsRequest) returns (QueryConsumerChainStopProposalsResponse) { option deprecated = true; @@ -59,12 +49,6 @@ service Query { "/interchain_security/ccv/provider/consumer_chain_stop_proposals"; } - rpc QueryConsumersThatAreAboutToStop(QueryConsumersThatAreAboutToStopRequest) - returns (QueryConsumersThatAreAboutToStopResponse) { - option (google.api.http).get = - "/interchain_security/ccv/provider/consumers_that_are_about_to_stop"; - } - // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. rpc QueryValidatorConsumerAddr(QueryValidatorConsumerAddrRequest) @@ -98,11 +82,12 @@ service Query { "/interchain_security/ccv/provider/registered_consumer_reward_denoms"; } - // QueryProposedConsumerChainIDs returns the chain IDs of the proposed consumer chain addition proposals + // [DEPRECATED] QueryProposedConsumerChainIDs returns the chain IDs of the proposed consumer chain addition proposals // that are still in the voting period rpc QueryProposedConsumerChainIDs( QueryProposedChainIDsRequest) returns (QueryProposedChainIDsResponse) { + option deprecated = true; option (google.api.http).get = "/interchain_security/ccv/provider/proposed_consumer_chains"; } @@ -211,35 +196,18 @@ message QueryConsumerChainsRequest {} message QueryConsumerChainsResponse { repeated Chain chains = 1; } -// [DEPRECATED] use `QueryConsumersThatAreAboutToStartRequest` instead message QueryConsumerChainStartProposalsRequest {} -// [DEPRECATED] use `QueryConsumersThatAreAboutToStartResponse` instead message QueryConsumerChainStartProposalsResponse { ConsumerAdditionProposals proposals = 1 [deprecated = true]; } -message QueryConsumersThatAreAboutToStartRequest {} - -message QueryConsumersThatAreAboutToStartResponse { - repeated string consumer_ids = 1; -} - -// [DEPRECATED] use `QueryConsumersThatAreAboutToStopRequest` instead message QueryConsumerChainStopProposalsRequest {} -// [DEPRECATED] use `QueryConsumersThatAreAboutToStopResponse` instead message QueryConsumerChainStopProposalsResponse { ConsumerRemovalProposals proposals = 1 [deprecated = true]; } -message QueryConsumersThatAreAboutToStopRequest {} - -message QueryConsumersThatAreAboutToStopResponse { - repeated string consumer_ids = 1; -} - - message Chain { string chain_id = 1; string client_id = 2; @@ -312,18 +280,19 @@ message QueryRegisteredConsumerRewardDenomsResponse { repeated string denoms = 1; } +// [DEPRECATED]: request used in query that is not currently supported message QueryProposedChainIDsRequest {} +// [DEPRECATED]: response used in query that is not currently supported message QueryProposedChainIDsResponse { repeated ProposedChain proposedChains = 1 - [ (gogoproto.nullable) = false ]; + [ deprecated = true, (gogoproto.nullable) = false ]; } message ProposedChain { - // [DEPRECATED] use `consumer_id` instead string chainID = 1 [deprecated = true]; - uint64 proposalID = 2; - string consumer_id = 3; + uint64 proposalID = 2 [deprecated = true]; + string consumer_id = 3 [deprecated = true]; } message QueryAllPairsValConAddrByConsumerChainIDRequest { diff --git a/tests/integration/provider_gov_hooks.go b/tests/integration/provider_gov_hooks.go deleted file mode 100644 index cdf7ca12b7..0000000000 --- a/tests/integration/provider_gov_hooks.go +++ /dev/null @@ -1,127 +0,0 @@ -package integration - -import ( - "time" - - "cosmossdk.io/math" - sdk "github.com/cosmos/cosmos-sdk/types" - authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" - v1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1" - "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" - - testkeeper "github.com/cosmos/interchain-security/v5/testutil/keeper" -) - -func (s *CCVTestSuite) TestGetConsumerAdditionFromProp() { - ctx := s.providerChain.GetContext() - proposer := s.providerChain.SenderAccount - - // create a dummy bank send message - dummyMsg := &banktypes.MsgSend{ - FromAddress: sdk.AccAddress(proposer.GetAddress()).String(), - ToAddress: sdk.AccAddress(proposer.GetAddress()).String(), - Amount: sdk.NewCoins(sdk.NewCoin("stake", math.OneInt())), - } - - // create a legacy proposal - textProp, err := v1.NewLegacyContent( - v1beta1.NewTextProposal("a title", "a legacy text prop"), - authtypes.NewModuleAddress("gov").String(), - ) - s.Require().NoError(err) - - // create a valid consumer addition message - msgConsumerAddition := testkeeper.GetTestMsgConsumerAddition() - - // create a legacy consumer addition proposal content - // (not supported anymore) - addConsumerPropLegacy, err := v1.NewLegacyContent( - testkeeper.GetTestConsumerAdditionProp(), - authtypes.NewModuleAddress("gov").String(), - ) - s.Require().NoError(err) - - testCases := []struct { - name string - propMsg sdk.Msg - expectConsumerPropFound bool - expPanic bool - }{ - { - name: "prop not found", - propMsg: nil, - expectConsumerPropFound: false, - expPanic: false, - }, - { - name: "msgs in prop contain no consumer addition props", - propMsg: dummyMsg, - expectConsumerPropFound: false, - expPanic: false, - }, - { - name: "msgs contain a legacy prop but not of ConsumerAdditionProposal type", - propMsg: textProp, - expectConsumerPropFound: false, - }, - { - name: "msgs contain an invalid legacy prop", - propMsg: &v1.MsgExecLegacyContent{}, - expectConsumerPropFound: false, - expPanic: false, - }, - { - name: "msg contains a prop of legacy ConsumerAdditionProposal type - hook should NOT create a new proposed chain", - propMsg: addConsumerPropLegacy, - expectConsumerPropFound: false, - expPanic: false, - }, - { - name: "msg contains a prop of MsgConsumerAddition type - hook should create a new proposed chain", - propMsg: &msgConsumerAddition, - expectConsumerPropFound: true, - expPanic: false, - }, - } - - for _, tc := range testCases { - s.Run(tc.name, func() { - providerKeeper := s.providerApp.GetProviderKeeper() - govKeeper := s.providerApp.GetTestGovKeeper() - - var proposal v1.Proposal - var err error - - if tc.propMsg == nil { - // cover edgecase where proposal has no messages - proposal, err = v1.NewProposal([]sdk.Msg{}, 1, time.Now(), time.Now().Add(1*time.Hour), "metadata", "title", "summary", proposer.GetAddress(), false) - s.Require().NoError(err) - } else { - // cover variolus cases where proposal has messages but only some are consumer addition proposals - proposal, err = v1.NewProposal([]sdk.Msg{tc.propMsg}, 1, time.Now(), time.Now().Add(1*time.Hour), "metadata", "title", "summary", proposer.GetAddress(), false) - s.Require().NoError(err) - } - - err = govKeeper.SetProposal(ctx, proposal) - s.Require().NoError(err) - - if tc.expPanic { - s.Require().Panics(func() { - // this panics with a nil pointer dereference because the proposal is invalid and cannot be unmarshalled - providerKeeper.Hooks().GetConsumerAdditionFromProp(ctx, proposal.Id) - }) - return - } - - savedProp, found := providerKeeper.Hooks().GetConsumerAdditionFromProp(ctx, proposal.Id) - if tc.expectConsumerPropFound { - s.Require().True(found) - s.Require().NotEmpty(savedProp, savedProp) - } else { - s.Require().False(found) - s.Require().Empty(savedProp) - } - }) - } -} diff --git a/x/ccv/provider/client/cli/query.go b/x/ccv/provider/client/cli/query.go index 06bce5ee8d..24fd6c91f7 100644 --- a/x/ccv/provider/client/cli/query.go +++ b/x/ccv/provider/client/cli/query.go @@ -27,9 +27,7 @@ func NewQueryCmd() *cobra.Command { cmd.AddCommand(CmdConsumerGenesis()) cmd.AddCommand(CmdConsumerChains()) cmd.AddCommand(CmdConsumerStartProposals()) - cmd.AddCommand(CmdListConsumersThatAreAboutToStart()) cmd.AddCommand(CmdConsumerStopProposals()) - cmd.AddCommand(CmdListConsumersThatAreAboutToStop()) cmd.AddCommand(CmdConsumerValidatorKeyAssignment()) cmd.AddCommand(CmdProviderValidatorKey()) cmd.AddCommand(CmdThrottleState()) @@ -134,7 +132,7 @@ func CmdProposedConsumerChains() *cobra.Command { func CmdConsumerStartProposals() *cobra.Command { cmd := &cobra.Command{ Use: "list-start-proposals", - Short: "DEPRECATED! Use `list-consumers-that-will-start` instead.", + Short: "DEPRECATED! Do not use.", Args: cobra.ExactArgs(0), RunE: func(cmd *cobra.Command, args []string) (err error) { clientCtx, err := client.GetClientQueryContext(cmd) @@ -158,37 +156,10 @@ func CmdConsumerStartProposals() *cobra.Command { return cmd } -func CmdListConsumersThatAreAboutToStart() *cobra.Command { - cmd := &cobra.Command{ - Use: "list-consumers-that-will-start", - Short: "Query all the consumer chains that are initialized and about to start.", - Args: cobra.ExactArgs(0), - RunE: func(cmd *cobra.Command, args []string) (err error) { - clientCtx, err := client.GetClientQueryContext(cmd) - if err != nil { - return err - } - queryClient := types.NewQueryClient(clientCtx) - - req := &types.QueryConsumersThatAreAboutToStartRequest{} - res, err := queryClient.QueryConsumersThatAreAboutToStart(cmd.Context(), req) - if err != nil { - return err - } - - return clientCtx.PrintProto(res) - }, - } - - flags.AddQueryFlagsToCmd(cmd) - - return cmd -} - func CmdConsumerStopProposals() *cobra.Command { cmd := &cobra.Command{ Use: "list-stop-proposals", - Short: "DEPRECATED! Use `list-consumers-that-will-stop` instead.", + Short: "DEPRECATED! Do not use.", Args: cobra.ExactArgs(0), RunE: func(cmd *cobra.Command, args []string) (err error) { clientCtx, err := client.GetClientQueryContext(cmd) @@ -212,33 +183,6 @@ func CmdConsumerStopProposals() *cobra.Command { return cmd } -func CmdListConsumersThatAreAboutToStop() *cobra.Command { - cmd := &cobra.Command{ - Use: "list-consumers-that-will-stop", - Short: "Query all the consumer chains that are launched and about to stop.", - Args: cobra.ExactArgs(0), - RunE: func(cmd *cobra.Command, args []string) (err error) { - clientCtx, err := client.GetClientQueryContext(cmd) - if err != nil { - return err - } - queryClient := types.NewQueryClient(clientCtx) - - req := &types.QueryConsumersThatAreAboutToStopRequest{} - res, err := queryClient.QueryConsumersThatAreAboutToStop(cmd.Context(), req) - if err != nil { - return err - } - - return clientCtx.PrintProto(res) - }, - } - - flags.AddQueryFlagsToCmd(cmd) - - return cmd -} - // TODO: fix naming func CmdConsumerValidatorKeyAssignment() *cobra.Command { bech32PrefixConsAddr := sdk.GetConfig().GetBech32ConsensusAddrPrefix() diff --git a/x/ccv/provider/keeper/grpc_query.go b/x/ccv/provider/keeper/grpc_query.go index 0edbfa0eee..717417bdff 100644 --- a/x/ccv/provider/keeper/grpc_query.go +++ b/x/ccv/provider/keeper/grpc_query.go @@ -3,9 +3,6 @@ package keeper import ( "context" "fmt" - govv1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1" - "math" - "google.golang.org/grpc/codes" "google.golang.org/grpc/status" @@ -108,35 +105,12 @@ func (k Keeper) GetConsumerChain(ctx sdk.Context, consumerId string) (types.Chai } func (k Keeper) QueryConsumerChainStarts(goCtx context.Context, req *types.QueryConsumerChainStartProposalsRequest) (*types.QueryConsumerChainStartProposalsResponse, error) { - return nil, status.Error(codes.Unimplemented, "This query is not supported anymore. Use `QueryConsumersThatAreAboutToStart` instead") -} - -func (k Keeper) QueryConsumersThatAreAboutToStart(goCtx context.Context, req *types.QueryConsumersThatAreAboutToStartRequest) (*types.QueryConsumersThatAreAboutToStartResponse, error) { - if req == nil { - return nil, status.Error(codes.InvalidArgument, "empty request") - } - - ctx := sdk.UnwrapSDKContext(goCtx) - - consumerIds := k.GetInitializedConsumersReadyToLaunch(ctx, math.MaxUint32) - return &types.QueryConsumersThatAreAboutToStartResponse{ConsumerIds: consumerIds}, nil + return nil, status.Error(codes.Unimplemented, "This query is not supported anymore.") } func (k Keeper) QueryConsumerChainStops(goCtx context.Context, req *types.QueryConsumerChainStopProposalsRequest) (*types.QueryConsumerChainStopProposalsResponse, error) { - return nil, status.Error(codes.Unimplemented, "This query is not supported anymore. Use `QueryConsumersThatAreAboutToStop` instead") + return nil, status.Error(codes.Unimplemented, "This query is not supported anymore.") } - -func (k Keeper) QueryConsumersThatAreAboutToStop(goCtx context.Context, req *types.QueryConsumersThatAreAboutToStopRequest) (*types.QueryConsumersThatAreAboutToStopResponse, error) { - if req == nil { - return nil, status.Error(codes.InvalidArgument, "empty request") - } - - ctx := sdk.UnwrapSDKContext(goCtx) - - consumerIds := k.GetLaunchedConsumersReadyToStop(ctx, math.MaxUint32) - return &types.QueryConsumersThatAreAboutToStopResponse{ConsumerIds: consumerIds}, nil -} - func (k Keeper) QueryValidatorConsumerAddr(goCtx context.Context, req *types.QueryValidatorConsumerAddrRequest) (*types.QueryValidatorConsumerAddrResponse, error) { if req == nil { return nil, status.Errorf(codes.InvalidArgument, "empty request") @@ -230,40 +204,7 @@ func (k Keeper) QueryRegisteredConsumerRewardDenoms(goCtx context.Context, req * } func (k Keeper) QueryProposedConsumerChainIDs(goCtx context.Context, req *types.QueryProposedChainIDsRequest) (*types.QueryProposedChainIDsResponse, error) { - if req == nil { - return nil, status.Error(codes.InvalidArgument, "empty request") - } - - ctx := sdk.UnwrapSDKContext(goCtx) - - var proposals []govv1.Proposal - err := k.govKeeper.Proposals.Walk(ctx, nil, func(proposalId uint64, proposal govv1.Proposal) (stop bool, err error) { - proposals = append(proposals, proposal) - return false, nil - }) - if err != nil { - return nil, status.Error(codes.Internal, "failed to retrieve proposals") - } - - var proposedChains []types.ProposedChain - for _, proposal := range proposals { - status := proposal.Status - if status != govv1.ProposalStatus_PROPOSAL_STATUS_DEPOSIT_PERIOD && status != govv1.ProposalStatus_PROPOSAL_STATUS_VOTING_PERIOD { - // we only care about active proposals - continue - } - - messages := proposal.GetMessages() - for _, msg := range messages { - if sdkMsg, isMsgUpdateConsumer := msg.GetCachedValue().(*types.MsgUpdateConsumer); isMsgUpdateConsumer { - proposedChains = append(proposedChains, types.ProposedChain{ProposalID: proposal.Id, ConsumerId: sdkMsg.ConsumerId}) - } - } - } - - return &types.QueryProposedChainIDsResponse{ - ProposedChains: proposedChains, - }, nil + return nil, status.Error(codes.Unimplemented, "This query is not supported anymore.") } func (k Keeper) QueryAllPairsValConAddrByConsumerChainID(goCtx context.Context, req *types.QueryAllPairsValConAddrByConsumerChainIDRequest) (*types.QueryAllPairsValConAddrByConsumerChainIDResponse, error) { diff --git a/x/ccv/provider/keeper/grpc_query_test.go b/x/ccv/provider/keeper/grpc_query_test.go index 2b1d10015a..bbc61794d8 100644 --- a/x/ccv/provider/keeper/grpc_query_test.go +++ b/x/ccv/provider/keeper/grpc_query_test.go @@ -384,7 +384,3 @@ func TestQueryConsumerIdFromClientId(t *testing.T) { require.NoError(t, err) require.Equal(t, expectedConsumerId, res.ConsumerId) } - -func TestQueryProposedConsumerChainIDs(t *testing.T) { - // TODO (PERMISSIONLESS) -} diff --git a/x/ccv/provider/keeper/hooks.go b/x/ccv/provider/keeper/hooks.go index f63eb54bfe..c4004ad6c9 100644 --- a/x/ccv/provider/keeper/hooks.go +++ b/x/ccv/provider/keeper/hooks.go @@ -123,48 +123,3 @@ func (h Hooks) AfterProposalVote(ctx context.Context, proposalID uint64, voterAd func (h Hooks) AfterProposalFailedMinDeposit(ctx context.Context, proposalID uint64) error { return nil } - -// GetConsumerAdditionFromProp extracts a consumer addition proposal from -// the proposal with the given ID -func (h Hooks) GetConsumerAdditionFromProp( - ctx sdk.Context, - proposalID uint64, -) (providertypes.ConsumerAdditionProposal, bool) { - p, err := h.k.govKeeper.Proposals.Get(ctx, proposalID) - if err != nil { - return providertypes.ConsumerAdditionProposal{}, false - } - - // Iterate over the messages in the proposal - // Note that it's assumed that at most ONE message can contain a consumer addition proposal - for _, msg := range p.GetMessages() { - sdkMsg, isConsumerAddition := msg.GetCachedValue().(*providertypes.MsgConsumerAddition) - if !isConsumerAddition { - continue - } - - proposal := providertypes.ConsumerAdditionProposal{ - Title: p.Title, - Description: p.Summary, - ChainId: sdkMsg.ChainId, - InitialHeight: sdkMsg.InitialHeight, - GenesisHash: sdkMsg.GenesisHash, - BinaryHash: sdkMsg.BinaryHash, - SpawnTime: sdkMsg.SpawnTime, - UnbondingPeriod: sdkMsg.UnbondingPeriod, - CcvTimeoutPeriod: sdkMsg.CcvTimeoutPeriod, - TransferTimeoutPeriod: sdkMsg.TransferTimeoutPeriod, - ConsumerRedistributionFraction: sdkMsg.ConsumerRedistributionFraction, - BlocksPerDistributionTransmission: sdkMsg.BlocksPerDistributionTransmission, - HistoricalEntries: sdkMsg.HistoricalEntries, - DistributionTransmissionChannel: sdkMsg.DistributionTransmissionChannel, - Top_N: sdkMsg.Top_N, - ValidatorsPowerCap: sdkMsg.ValidatorsPowerCap, - ValidatorSetCap: sdkMsg.ValidatorSetCap, - Allowlist: sdkMsg.Allowlist, - Denylist: sdkMsg.Denylist, - } - return proposal, true - } - return providertypes.ConsumerAdditionProposal{}, false -} diff --git a/x/ccv/provider/keeper/partial_set_security.go b/x/ccv/provider/keeper/partial_set_security.go index fbb3cff44e..53b2df5393 100644 --- a/x/ccv/provider/keeper/partial_set_security.go +++ b/x/ccv/provider/keeper/partial_set_security.go @@ -115,29 +115,39 @@ func (k Keeper) OptInTopNValidators(ctx sdk.Context, consumerId string, bondedVa valAddr, err := sdk.ValAddressFromBech32(val.GetOperator()) if err != nil { - k.Logger(ctx).Error("could not retrieve validator address: %s: %s", - val.GetOperator(), err) + k.Logger(ctx).Error("could not retrieve validator address from operator address", + "validator operator address", val.GetOperator(), + "error", err.Error()) continue } power, err := k.stakingKeeper.GetLastValidatorPower(ctx, valAddr) if err != nil { - k.Logger(ctx).Error("could not retrieve last power of validator address: %s: %s", - val.GetOperator(), err) + k.Logger(ctx).Error("could not retrieve last power of validator", + "validator operator address", val.GetOperator(), + "error", err.Error()) continue } if power >= minPowerToOptIn { consAddr, err := val.GetConsAddr() if err != nil { - k.Logger(ctx).Error("could not retrieve validators consensus address: %s: %s", - val, err) + k.Logger(ctx).Error("could not retrieve validator consensus address", + "validator operator address", val.GetOperator(), + "error", err.Error()) continue } k.Logger(ctx).Debug("Opting in validator", "validator", val.GetOperator()) // if validator already exists it gets overwritten + err = k.AppendOptedInConsumerId(ctx, types.NewProviderConsAddress(consAddr), consumerId) + if err != nil { + k.Logger(ctx).Error("could not append validator as opted-in validator for this consumer chain", + "validator operator address", val.GetOperator(), + "consumer id", consumerId, + "error", err.Error()) + continue + } k.SetOptedIn(ctx, consumerId, types.NewProviderConsAddress(consAddr)) - k.AppendOptedInConsumerId(ctx, types.NewProviderConsAddress(consAddr), consumerId) } // else validators that do not belong to the top N validators but were opted in, remain opted in } } diff --git a/x/ccv/provider/migrations/migrator.go b/x/ccv/provider/migrations/migrator.go index 22b3049631..b2d733de11 100644 --- a/x/ccv/provider/migrations/migrator.go +++ b/x/ccv/provider/migrations/migrator.go @@ -95,12 +95,6 @@ func (m Migrator) Migrate7to8(ctx sdktypes.Context) error { if err := v8.MigrateLaunchedConsumerChains(ctx, store, m.providerKeeper); err != nil { return err } - if err := v8.MigratePreLaunchedConsumerChains(ctx, store, m.providerKeeper); err != nil { - return err - } - if err := v8.MigrateStoppedConsumerChains(ctx, store, m.providerKeeper); err != nil { - return err - } v8.CleanupState(store) return nil diff --git a/x/ccv/provider/migrations/v8/migrations.go b/x/ccv/provider/migrations/v8/migrations.go index 5c9c28470c..626f2c3c91 100644 --- a/x/ccv/provider/migrations/v8/migrations.go +++ b/x/ccv/provider/migrations/v8/migrations.go @@ -1,9 +1,7 @@ package v8 import ( - "bytes" "encoding/binary" - "fmt" "github.com/cosmos/cosmos-sdk/types/bech32" "time" @@ -264,28 +262,6 @@ func MigrateLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk // set phase to launched pk.SetConsumerPhase(ctx, consumerId, providerkeeper.Launched) - // An already-launched chain might haven been set to be removed. After the migration, we won't be looking - // at the removal props anymore to remove chains. Because of this, if the chain is set to be removed we - // set its stop time and append the consumer to be stopped. - removalProps, err := legacyGetAllPendingConsumerRemovalProps(store) - if err != nil { - return err - } - for _, prop := range removalProps { - if prop.ChainId == chainId { - err := pk.SetConsumerStopTime(ctx, consumerId, prop.StopTime) - if err != nil { - return err - } - err = pk.AppendConsumerToBeStoppedOnStopTime(ctx, consumerId, prop.StopTime) - if err != nil { - return err - } - - break - } - } - // This is to migrate everything under `ProviderConsAddrToOptedInConsumerIdsKey` // `OptedIn` was already re-keyed earlier (see above) and hence we can use `consumerId` here. for _, providerConsAddr := range pk.GetAllOptedIn(ctx, consumerId) { @@ -303,86 +279,6 @@ func MigrateLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk return nil } -// MigratePreLaunchedConsumerChains migrates all the state for consumer chains not yet launched -// Note that it must be executed before CleanupState. -func MigratePreLaunchedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk providerkeeper.Keeper) error { - props, err := legacyGetAllPendingConsumerAdditionProps(store) - if err != nil { - return err - } - - for _, prop := range props { - consumerId := pk.FetchAndIncrementConsumerId(ctx) - - pk.SetConsumerOwnerAddress(ctx, consumerId, pk.GetAuthority()) - pk.SetConsumerChainId(ctx, consumerId, prop.ChainId) - - consumerMetadata := providertypes.ConsumerMetadata{ - Name: prop.ChainId, - Description: prop.Description, - } - pk.SetConsumerMetadata(ctx, consumerId, consumerMetadata) - - initializationParameters := providertypes.ConsumerInitializationParameters{ - InitialHeight: prop.InitialHeight, - GenesisHash: prop.GenesisHash, - BinaryHash: prop.BinaryHash, - SpawnTime: prop.SpawnTime, - UnbondingPeriod: prop.UnbondingPeriod, - CcvTimeoutPeriod: prop.CcvTimeoutPeriod, - TransferTimeoutPeriod: prop.TransferTimeoutPeriod, - ConsumerRedistributionFraction: prop.ConsumerRedistributionFraction, - BlocksPerDistributionTransmission: prop.BlocksPerDistributionTransmission, - HistoricalEntries: prop.HistoricalEntries, - DistributionTransmissionChannel: prop.DistributionTransmissionChannel, - } - pk.SetConsumerInitializationParameters(ctx, consumerId, initializationParameters) - - powerShapingParameters := providertypes.PowerShapingParameters{ - Top_N: prop.Top_N, - ValidatorsPowerCap: prop.ValidatorsPowerCap, - ValidatorSetCap: prop.ValidatorSetCap, - Allowlist: prop.Allowlist, - Denylist: prop.Denylist, - MinStake: prop.MinStake, - AllowInactiveVals: prop.AllowInactiveVals, - } - pk.SetConsumerPowerShapingParameters(ctx, consumerId, powerShapingParameters) - - if spawnTime, canLaunch := pk.CanLaunch(ctx, consumerId); canLaunch { - pk.SetConsumerPhase(ctx, consumerId, providerkeeper.Initialized) - pk.PrepareConsumerForLaunch(ctx, consumerId, time.Time{}, spawnTime) - } - } - - // Note that the keys are deleted in CleanupState - - return nil -} - -// MigrateStoppedConsumerChains migrates all the state for consumer chains about to be stopped -// Note that it must be executed before CleanupState. -func MigrateStoppedConsumerChains(ctx sdk.Context, store storetypes.KVStore, pk providerkeeper.Keeper) error { - // NOTE: We already do the migration of to-be-stopped chains in `MigrateLaunchedConsumerChains`. If a chain can/is to be stopped - // it means it still launched at the moment of the migration. - - props, err := legacyGetAllPendingConsumerRemovalProps(store) - if err != nil { - return err - } - - for _, prop := range props { - _ = prop - // TODO - // - each prop should have a stop time set, so it can be added to AppendConsumerToBeStoppedOnStopTime - // - populate the state accordingly - } - - // Note that the keys are deleted in CleanupState - - return nil -} - // rekeyFromChainIdToConsumerId migrates store keys from `keyPrefix | chainId` // to `keyPrefix | consumerId` leaving the value unchanged func rekeyFromChainIdToConsumerId( @@ -502,80 +398,3 @@ func removePrefix(store storetypes.KVStore, prefix byte) { store.Delete(delKey) } } - -// legacyGetAllPendingConsumerAdditionProps gets all pending consumer addition proposals. -// -// Note that the pending consumer addition proposals are stored under keys with the following format: -// PendingCAPKeyPrefix | spawnTime.UnixNano() | consumerId -// Thus, the returned array is in spawnTime order. If two proposals have the same spawnTime, -// then they are ordered by consumerId. -func legacyGetAllPendingConsumerAdditionProps(store storetypes.KVStore) ([]providertypes.ConsumerAdditionProposal, error) { - props := []providertypes.ConsumerAdditionProposal{} - iterator := storetypes.KVStorePrefixIterator(store, []byte{LegacyPendingCAPKeyPrefix}) - for ; iterator.Valid(); iterator.Next() { - var prop providertypes.ConsumerAdditionProposal - err := prop.Unmarshal(iterator.Value()) - if err != nil { - return props, err - } - props = append(props, prop) - } - err := iterator.Close() - if err != nil { - return props, err - } - return props, nil -} - -func legacyGetAllPendingConsumerRemovalProps(store storetypes.KVStore) ([]providertypes.ConsumerRemovalProposal, error) { - props := []providertypes.ConsumerRemovalProposal{} - iterator := storetypes.KVStorePrefixIterator(store, []byte{LegacyPendingCRPKeyPrefix}) - for ; iterator.Valid(); iterator.Next() { - var prop providertypes.ConsumerRemovalProposal - err := prop.Unmarshal(iterator.Value()) - if err != nil { - return props, err - } - props = append(props, prop) - } - err := iterator.Close() - if err != nil { - return props, err - } - return props, nil -} - -// legacyGetAllProposedConsumerChainIDs returns the proposed consumer ids of all gov proposals that are still in the voting period -func legacyGetAllProposedConsumerChainIDs(store storetypes.KVStore) ([]providertypes.ProposedChain, error) { - proposedChains := []providertypes.ProposedChain{} - iterator := storetypes.KVStorePrefixIterator(store, []byte{LegacyProposedConsumerChainKeyPrefix}) - for ; iterator.Valid(); iterator.Next() { - proposalID, err := legacyParseProposedConsumerChainKey(iterator.Key()) - if err != nil { - return proposedChains, err - } - proposedChains = append(proposedChains, providertypes.ProposedChain{ - ConsumerId: string(iterator.Value()), - ProposalID: proposalID, - }) - - } - err := iterator.Close() - if err != nil { - return proposedChains, err - } - - return proposedChains, nil -} - -// ParseProposedConsumerChainKey get the proposalID in the key -func legacyParseProposedConsumerChainKey(bz []byte) (uint64, error) { - expectedPrefix := []byte{LegacyProposedConsumerChainKeyPrefix} - prefixL := len(expectedPrefix) - if prefix := bz[:prefixL]; !bytes.Equal(prefix, expectedPrefix) { - return 0, fmt.Errorf("invalid prefix; expected: %X, got: %X", expectedPrefix, prefix) - } - proposalID := sdk.BigEndianToUint64(bz[prefixL:]) - - return proposalID, nil -} diff --git a/x/ccv/provider/types/genesis.pb.go b/x/ccv/provider/types/genesis.pb.go index 7097cd1a2b..3171ce6577 100644 --- a/x/ccv/provider/types/genesis.pb.go +++ b/x/ccv/provider/types/genesis.pb.go @@ -32,10 +32,10 @@ type GenesisState struct { ConsumerStates []ConsumerState `protobuf:"bytes,2,rep,name=consumer_states,json=consumerStates,proto3" json:"consumer_states" yaml:"consumer_states"` // empty for a new chain ValsetUpdateIdToHeight []ValsetUpdateIdToHeight `protobuf:"bytes,5,rep,name=valset_update_id_to_height,json=valsetUpdateIdToHeight,proto3" json:"valset_update_id_to_height"` - // empty for a new chain - ConsumerAdditionProposals []ConsumerAdditionProposal `protobuf:"bytes,6,rep,name=consumer_addition_proposals,json=consumerAdditionProposals,proto3" json:"consumer_addition_proposals"` - // empty for a new chain - ConsumerRemovalProposals []ConsumerRemovalProposal `protobuf:"bytes,7,rep,name=consumer_removal_proposals,json=consumerRemovalProposals,proto3" json:"consumer_removal_proposals"` + // [DEPRECATED] empty for a new chain + ConsumerAdditionProposals []ConsumerAdditionProposal `protobuf:"bytes,6,rep,name=consumer_addition_proposals,json=consumerAdditionProposals,proto3" json:"consumer_addition_proposals"` // Deprecated: Do not use. + // [DEPRECATED] empty for a new chain + ConsumerRemovalProposals []ConsumerRemovalProposal `protobuf:"bytes,7,rep,name=consumer_removal_proposals,json=consumerRemovalProposals,proto3" json:"consumer_removal_proposals"` // Deprecated: Do not use. Params Params `protobuf:"bytes,8,opt,name=params,proto3" json:"params"` // empty for a new chain ValidatorConsumerPubkeys []ValidatorConsumerPubKey `protobuf:"bytes,9,rep,name=validator_consumer_pubkeys,json=validatorConsumerPubkeys,proto3" json:"validator_consumer_pubkeys"` @@ -99,6 +99,7 @@ func (m *GenesisState) GetValsetUpdateIdToHeight() []ValsetUpdateIdToHeight { return nil } +// Deprecated: Do not use. func (m *GenesisState) GetConsumerAdditionProposals() []ConsumerAdditionProposal { if m != nil { return m.ConsumerAdditionProposals @@ -106,6 +107,7 @@ func (m *GenesisState) GetConsumerAdditionProposals() []ConsumerAdditionProposal return nil } +// Deprecated: Do not use. func (m *GenesisState) GetConsumerRemovalProposals() []ConsumerRemovalProposal { if m != nil { return m.ConsumerRemovalProposals @@ -308,56 +310,57 @@ func init() { } var fileDescriptor_48411d9c7900d48e = []byte{ - // 782 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0xd1, 0x6e, 0xda, 0x48, - 0x14, 0xc5, 0xc1, 0x21, 0x66, 0x12, 0x58, 0xcb, 0x8a, 0x90, 0x43, 0xb4, 0x24, 0x62, 0x15, 0x09, - 0x69, 0x77, 0x71, 0x60, 0xb5, 0xd2, 0x6a, 0x77, 0xf3, 0x10, 0x12, 0x69, 0x17, 0xfa, 0x82, 0x48, - 0x9a, 0x4a, 0x79, 0xb1, 0x86, 0xf1, 0x08, 0x46, 0x18, 0x8f, 0xe5, 0x19, 0x9c, 0xa2, 0xaa, 0x52, - 0xab, 0xfe, 0x40, 0x9f, 0xfb, 0x0d, 0xfd, 0x90, 0x3c, 0xe6, 0xb1, 0x4f, 0x51, 0x95, 0xfc, 0x41, - 0xbf, 0xa0, 0xf2, 0x78, 0xec, 0x42, 0x4a, 0x22, 0xe8, 0x1b, 0xcc, 0x99, 0x73, 0xee, 0xb9, 0xd7, - 0xf7, 0xde, 0x01, 0x0d, 0xe2, 0x71, 0x1c, 0xa0, 0x21, 0x24, 0x9e, 0xcd, 0x30, 0x9a, 0x04, 0x84, - 0x4f, 0x2d, 0x84, 0x42, 0xcb, 0x0f, 0x68, 0x48, 0x1c, 0x1c, 0x58, 0x61, 0xc3, 0x1a, 0x60, 0x0f, - 0x33, 0xc2, 0xea, 0x7e, 0x40, 0x39, 0x35, 0x7e, 0x59, 0x40, 0xa9, 0x23, 0x14, 0xd6, 0x13, 0x4a, - 0x3d, 0x6c, 0x94, 0xb7, 0x07, 0x74, 0x40, 0xc5, 0x7d, 0x2b, 0xfa, 0x15, 0x53, 0xcb, 0x87, 0x8f, - 0x45, 0x0b, 0x1b, 0x16, 0x1b, 0xc2, 0x00, 0x3b, 0x36, 0xa2, 0x1e, 0x9b, 0x8c, 0x71, 0x20, 0x19, - 0x07, 0x4f, 0x30, 0xae, 0x48, 0x80, 0xe5, 0xb5, 0xe6, 0x32, 0x69, 0xa4, 0xfe, 0x04, 0xa7, 0xfa, - 0x51, 0x03, 0x5b, 0xff, 0xc5, 0x99, 0x9d, 0x71, 0xc8, 0xb1, 0x51, 0x03, 0x7a, 0x08, 0x5d, 0x86, - 0xb9, 0x3d, 0xf1, 0x1d, 0xc8, 0xb1, 0x4d, 0x1c, 0x53, 0xd9, 0x57, 0x6a, 0x6a, 0xaf, 0x18, 0x9f, - 0x3f, 0x17, 0xc7, 0x6d, 0xc7, 0x78, 0x05, 0x7e, 0x4a, 0x7c, 0xda, 0x2c, 0xe2, 0x32, 0x73, 0x6d, - 0x3f, 0x5b, 0xdb, 0x6c, 0x36, 0xeb, 0x4b, 0x14, 0xa7, 0x7e, 0x22, 0xb9, 0x22, 0x6c, 0xab, 0x72, - 0x7d, 0xbb, 0x97, 0xf9, 0x72, 0xbb, 0x57, 0x9a, 0xc2, 0xb1, 0xfb, 0x77, 0xf5, 0x81, 0x70, 0xb5, - 0x57, 0x44, 0xb3, 0xd7, 0x99, 0xf1, 0x1a, 0x94, 0x1f, 0xda, 0xb4, 0x39, 0xb5, 0x87, 0x98, 0x0c, - 0x86, 0xdc, 0x5c, 0x17, 0x3e, 0xfe, 0x59, 0xca, 0xc7, 0xc5, 0x5c, 0x56, 0xe7, 0xf4, 0x7f, 0x21, - 0xd1, 0x52, 0x23, 0x43, 0xbd, 0x52, 0xb8, 0x10, 0x35, 0xde, 0x29, 0x60, 0x37, 0xf5, 0x08, 0x1d, - 0x87, 0x70, 0x42, 0x3d, 0xdb, 0x0f, 0xa8, 0x4f, 0x19, 0x74, 0x99, 0x99, 0x13, 0x06, 0x8e, 0x56, - 0x2a, 0xc4, 0xb1, 0x94, 0xe9, 0x4a, 0x15, 0x69, 0x61, 0x07, 0x3d, 0x82, 0x33, 0xe3, 0x8d, 0x02, - 0xca, 0xa9, 0x8b, 0x00, 0x8f, 0x69, 0x08, 0xdd, 0x19, 0x13, 0x1b, 0xc2, 0xc4, 0xbf, 0x2b, 0x99, - 0xe8, 0xc5, 0x2a, 0x0f, 0x3c, 0x98, 0x68, 0x31, 0xcc, 0x8c, 0x36, 0xc8, 0xf9, 0x30, 0x80, 0x63, - 0x66, 0x6a, 0xfb, 0x4a, 0x6d, 0xb3, 0xf9, 0xeb, 0x52, 0xd1, 0xba, 0x82, 0x22, 0xc5, 0xa5, 0x80, - 0xc8, 0x26, 0x84, 0x2e, 0x71, 0x20, 0xa7, 0x41, 0x3a, 0x02, 0xb6, 0x3f, 0xe9, 0x8f, 0xf0, 0x94, - 0x99, 0xf9, 0x15, 0xb2, 0xb9, 0x48, 0x64, 0x92, 0xb4, 0xba, 0x93, 0xfe, 0x33, 0x3c, 0x4d, 0xb2, - 0x09, 0x17, 0xc0, 0x51, 0x0c, 0xe3, 0xad, 0x02, 0x76, 0x53, 0x90, 0xd9, 0xfd, 0xa9, 0x3d, 0xfb, - 0x91, 0x03, 0x13, 0xfc, 0x88, 0x87, 0xd6, 0x74, 0xe6, 0x0b, 0x07, 0xdf, 0x79, 0x60, 0xf3, 0x78, - 0xd4, 0xd9, 0x73, 0x41, 0x59, 0xd4, 0xd7, 0x7e, 0x30, 0xf1, 0xb0, 0x1d, 0x36, 0xcd, 0xe2, 0x0a, - 0x9d, 0x3d, 0x2b, 0xcb, 0xce, 0x69, 0x37, 0xd2, 0xb8, 0x68, 0x26, 0x9d, 0x8d, 0x16, 0xa2, 0x1d, - 0x55, 0xcb, 0xea, 0x6a, 0x47, 0xd5, 0x54, 0x7d, 0xbd, 0xa3, 0x6a, 0x9b, 0xfa, 0x56, 0x47, 0xd5, - 0xb6, 0xf4, 0x42, 0x47, 0xd5, 0x0a, 0x7a, 0xb1, 0xfa, 0x21, 0x0b, 0x0a, 0x73, 0x83, 0x6b, 0xec, - 0x00, 0x2d, 0xb6, 0x21, 0xf7, 0x44, 0xbe, 0xb7, 0x21, 0xfe, 0xb7, 0x1d, 0xe3, 0x67, 0x00, 0xd0, - 0x10, 0x7a, 0x1e, 0x76, 0x23, 0x70, 0x4d, 0x80, 0x79, 0x79, 0xd2, 0x76, 0x8c, 0x5d, 0x90, 0x47, - 0x2e, 0xc1, 0x1e, 0x8f, 0xd0, 0xac, 0x40, 0xb5, 0xf8, 0xa0, 0xed, 0x18, 0x07, 0xa0, 0x48, 0x3c, - 0xc2, 0x09, 0x74, 0x93, 0x99, 0x56, 0xc5, 0x12, 0x2a, 0xc8, 0x53, 0x39, 0x87, 0x10, 0xe8, 0x69, - 0xb1, 0xe4, 0x82, 0x36, 0xd7, 0x45, 0x23, 0x1e, 0x3e, 0x5a, 0xa2, 0x99, 0xca, 0xcc, 0x6e, 0x3e, - 0x59, 0x97, 0x74, 0xa7, 0x49, 0xcc, 0xe0, 0xa0, 0xe4, 0x63, 0xcf, 0x21, 0xde, 0xc0, 0x96, 0x1b, - 0x27, 0x4a, 0x61, 0x80, 0x93, 0x21, 0xff, 0xeb, 0xa9, 0x40, 0x69, 0x13, 0x9c, 0x61, 0x7e, 0x22, - 0x68, 0x5d, 0x88, 0x46, 0x98, 0x9f, 0x42, 0x0e, 0x65, 0xc0, 0x6d, 0xa9, 0x1e, 0xef, 0xa1, 0xf8, - 0x12, 0x33, 0x7e, 0x03, 0x06, 0x73, 0x21, 0x1b, 0xda, 0x0e, 0xbd, 0xf2, 0x38, 0x19, 0x63, 0x1b, - 0xa2, 0x91, 0x98, 0xe8, 0x7c, 0x4f, 0x17, 0xc8, 0xa9, 0x04, 0x8e, 0xd1, 0xa8, 0xa3, 0x6a, 0x9a, - 0x9e, 0xaf, 0x5e, 0x82, 0xd2, 0xe2, 0x65, 0xb6, 0xc2, 0x52, 0x2f, 0x81, 0x9c, 0xac, 0xf7, 0x9a, - 0xc0, 0xe5, 0xbf, 0xd6, 0x8b, 0xeb, 0xbb, 0x8a, 0x72, 0x73, 0x57, 0x51, 0x3e, 0xdf, 0x55, 0x94, - 0xf7, 0xf7, 0x95, 0xcc, 0xcd, 0x7d, 0x25, 0xf3, 0xe9, 0xbe, 0x92, 0xb9, 0x3c, 0x1a, 0x10, 0x3e, - 0x9c, 0xf4, 0xeb, 0x88, 0x8e, 0x2d, 0x44, 0xd9, 0x98, 0x32, 0xeb, 0x5b, 0x41, 0x7e, 0x4f, 0xdf, - 0xa1, 0xf0, 0x4f, 0xeb, 0xe5, 0xfc, 0x63, 0xc4, 0xa7, 0x3e, 0x66, 0xfd, 0x9c, 0x78, 0x87, 0xfe, - 0xf8, 0x1a, 0x00, 0x00, 0xff, 0xff, 0xa4, 0x95, 0x75, 0xdb, 0x84, 0x07, 0x00, 0x00, + // 788 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0x41, 0x6b, 0xeb, 0x46, + 0x10, 0xb6, 0x62, 0xc5, 0x91, 0x37, 0xb1, 0x2b, 0x96, 0x60, 0x14, 0x87, 0x3a, 0xc1, 0x25, 0x60, + 0x68, 0x6b, 0xc5, 0x2e, 0x85, 0xd2, 0x36, 0x87, 0x38, 0x81, 0xd6, 0xee, 0xc5, 0x38, 0x69, 0x0a, + 0xb9, 0x88, 0xf5, 0x6a, 0xb1, 0x17, 0xcb, 0x5a, 0xa1, 0x5d, 0x2b, 0x35, 0xa5, 0xd0, 0x16, 0x7a, + 0xef, 0xb9, 0xbf, 0xe2, 0xfd, 0x8c, 0x1c, 0x73, 0x7c, 0xa7, 0xf0, 0x48, 0xfe, 0xc1, 0xfb, 0x05, + 0x0f, 0xad, 0xd6, 0x7a, 0x76, 0xe2, 0x04, 0xfb, 0xdd, 0xa4, 0xfd, 0x66, 0xbe, 0xf9, 0x66, 0x76, + 0x66, 0x16, 0x34, 0xa8, 0x2f, 0x48, 0x88, 0x87, 0x88, 0xfa, 0x0e, 0x27, 0x78, 0x12, 0x52, 0x31, + 0xb5, 0x31, 0x8e, 0xec, 0x20, 0x64, 0x11, 0x75, 0x49, 0x68, 0x47, 0x0d, 0x7b, 0x40, 0x7c, 0xc2, + 0x29, 0xaf, 0x07, 0x21, 0x13, 0x0c, 0x7e, 0xb1, 0xc4, 0xa5, 0x8e, 0x71, 0x54, 0x9f, 0xb9, 0xd4, + 0xa3, 0x46, 0x79, 0x77, 0xc0, 0x06, 0x4c, 0xda, 0xdb, 0xf1, 0x57, 0xe2, 0x5a, 0x3e, 0x7e, 0x29, + 0x5a, 0xd4, 0xb0, 0xf9, 0x10, 0x85, 0xc4, 0x75, 0x30, 0xf3, 0xf9, 0x64, 0x4c, 0x42, 0xe5, 0x71, + 0xf4, 0x8a, 0xc7, 0x0d, 0x0d, 0x89, 0x32, 0x6b, 0xae, 0x92, 0x46, 0xaa, 0x4f, 0xfa, 0x54, 0xdf, + 0x18, 0x60, 0xe7, 0xa7, 0x24, 0xb3, 0x0b, 0x81, 0x04, 0x81, 0x35, 0x60, 0x46, 0xc8, 0xe3, 0x44, + 0x38, 0x93, 0xc0, 0x45, 0x82, 0x38, 0xd4, 0xb5, 0xb4, 0x43, 0xad, 0xa6, 0xf7, 0x8a, 0xc9, 0xf9, + 0xaf, 0xf2, 0xb8, 0xed, 0xc2, 0x3f, 0xc0, 0x67, 0x33, 0x9d, 0x0e, 0x8f, 0x7d, 0xb9, 0xb5, 0x71, + 0x98, 0xad, 0x6d, 0x37, 0x9b, 0xf5, 0x15, 0x8a, 0x53, 0x3f, 0x53, 0xbe, 0x32, 0x6c, 0xab, 0x72, + 0x7b, 0x7f, 0x90, 0x79, 0x7f, 0x7f, 0x50, 0x9a, 0xa2, 0xb1, 0xf7, 0x7d, 0xf5, 0x09, 0x71, 0xb5, + 0x57, 0xc4, 0xf3, 0xe6, 0x1c, 0xfe, 0x09, 0xca, 0x4f, 0x65, 0x3a, 0x82, 0x39, 0x43, 0x42, 0x07, + 0x43, 0x61, 0x6d, 0x4a, 0x1d, 0x3f, 0xac, 0xa4, 0xe3, 0x6a, 0x21, 0xab, 0x4b, 0xf6, 0xb3, 0xa4, + 0x68, 0xe9, 0xb1, 0xa0, 0x5e, 0x29, 0x5a, 0x8a, 0xc2, 0x7f, 0x35, 0xb0, 0x9f, 0x6a, 0x44, 0xae, + 0x4b, 0x05, 0x65, 0xbe, 0x13, 0x84, 0x2c, 0x60, 0x1c, 0x79, 0xdc, 0xca, 0x49, 0x01, 0x27, 0x6b, + 0x15, 0xe2, 0x54, 0xd1, 0x74, 0x15, 0x4b, 0x2b, 0x17, 0x4b, 0xb0, 0xb4, 0xde, 0x1e, 0x7e, 0xc1, + 0x82, 0xc3, 0x7f, 0x34, 0x50, 0x4e, 0x75, 0x84, 0x64, 0xcc, 0x22, 0xe4, 0xcd, 0xc9, 0xd8, 0x92, + 0x32, 0x7e, 0x5c, 0x4b, 0x46, 0x2f, 0x61, 0x79, 0xa6, 0xc2, 0xc2, 0xcb, 0x0d, 0x38, 0x6c, 0x83, + 0x5c, 0x80, 0x42, 0x34, 0xe6, 0x96, 0x71, 0xa8, 0xd5, 0xb6, 0x9b, 0x5f, 0xae, 0x14, 0xaf, 0x2b, + 0x5d, 0x54, 0x9d, 0x15, 0x01, 0xfc, 0x4b, 0x93, 0xf7, 0x4a, 0x5d, 0x24, 0x58, 0x98, 0x8e, 0x81, + 0x13, 0x4c, 0xfa, 0x23, 0x32, 0xe5, 0x56, 0x7e, 0x8d, 0x7c, 0xae, 0x66, 0x34, 0xb3, 0xc4, 0xba, + 0x93, 0xfe, 0x2f, 0x64, 0xaa, 0x02, 0x5a, 0xd1, 0x12, 0x38, 0x8e, 0x01, 0xff, 0xd6, 0xc0, 0x7e, + 0x0a, 0x72, 0xa7, 0x3f, 0x75, 0xe6, 0x2f, 0x3a, 0xb4, 0xc0, 0xa7, 0x68, 0x68, 0x4d, 0xe7, 0x6e, + 0x39, 0x7c, 0xa6, 0x81, 0x2f, 0xe2, 0x71, 0x77, 0x2f, 0x04, 0xe5, 0x71, 0x6f, 0x07, 0xe1, 0xc4, + 0x27, 0x4e, 0xd4, 0xb4, 0x8a, 0x6b, 0x74, 0xf7, 0x3c, 0x2d, 0xbf, 0x64, 0xdd, 0x98, 0xe3, 0xaa, + 0x39, 0xeb, 0x6e, 0xbc, 0x14, 0xed, 0xe8, 0x46, 0xd6, 0xd4, 0x3b, 0xba, 0xa1, 0x9b, 0x9b, 0x1d, + 0xdd, 0xd8, 0x36, 0x77, 0x3a, 0xba, 0xb1, 0x63, 0x16, 0x3a, 0xba, 0x51, 0x30, 0x8b, 0xd5, 0xff, + 0xb3, 0xa0, 0xb0, 0x30, 0xbc, 0x70, 0x0f, 0x18, 0x89, 0x0c, 0xb5, 0x2b, 0xf2, 0xbd, 0x2d, 0xf9, + 0xdf, 0x76, 0xe1, 0xe7, 0x00, 0xe0, 0x21, 0xf2, 0x7d, 0xe2, 0xc5, 0xe0, 0x86, 0x04, 0xf3, 0xea, + 0xa4, 0xed, 0xc2, 0x7d, 0x90, 0xc7, 0x1e, 0x25, 0xbe, 0x88, 0xd1, 0xac, 0x44, 0x8d, 0xe4, 0xa0, + 0xed, 0xc2, 0x23, 0x50, 0xa4, 0x3e, 0x15, 0x14, 0x79, 0xb3, 0xb9, 0xd6, 0xe5, 0x22, 0x2a, 0xa8, + 0x53, 0x35, 0x8b, 0x08, 0x98, 0x69, 0xb1, 0xd4, 0x92, 0xb6, 0x36, 0x65, 0x23, 0x1e, 0xbf, 0x58, + 0xa2, 0xb9, 0xca, 0xcc, 0x6f, 0x3f, 0x55, 0x97, 0x74, 0xaf, 0x29, 0x0c, 0x0a, 0x50, 0x0a, 0x88, + 0xef, 0x52, 0x7f, 0xe0, 0xa8, 0xad, 0x13, 0xa7, 0x30, 0x20, 0xb3, 0x41, 0xff, 0xee, 0xb5, 0x40, + 0x69, 0x13, 0x5c, 0x10, 0x71, 0x26, 0xdd, 0xba, 0x08, 0x8f, 0x88, 0x38, 0x47, 0x02, 0xa9, 0x80, + 0xbb, 0x8a, 0x3d, 0xd9, 0x45, 0x89, 0x11, 0x87, 0x5f, 0x01, 0xc8, 0x3d, 0xc4, 0x87, 0x8e, 0xcb, + 0x6e, 0x7c, 0x41, 0xc7, 0xc4, 0x41, 0x78, 0x24, 0x67, 0x3a, 0xdf, 0x33, 0x25, 0x72, 0xae, 0x80, + 0x53, 0x3c, 0xea, 0xe8, 0x86, 0x61, 0xe6, 0xab, 0xd7, 0xa0, 0xb4, 0x7c, 0xa1, 0xad, 0xb1, 0xd8, + 0x4b, 0x20, 0xa7, 0xea, 0xbd, 0x21, 0x71, 0xf5, 0xd7, 0xfa, 0xed, 0xf6, 0xa1, 0xa2, 0xdd, 0x3d, + 0x54, 0xb4, 0x77, 0x0f, 0x15, 0xed, 0xbf, 0xc7, 0x4a, 0xe6, 0xee, 0xb1, 0x92, 0x79, 0xfb, 0x58, + 0xc9, 0x5c, 0x9f, 0x0c, 0xa8, 0x18, 0x4e, 0xfa, 0x75, 0xcc, 0xc6, 0x36, 0x66, 0x7c, 0xcc, 0xb8, + 0xfd, 0xb1, 0x20, 0x5f, 0xa7, 0x6f, 0x51, 0xf4, 0xad, 0xfd, 0xfb, 0xe2, 0x83, 0x24, 0xa6, 0x01, + 0xe1, 0xfd, 0x9c, 0x7c, 0x8b, 0xbe, 0xf9, 0x10, 0x00, 0x00, 0xff, 0xff, 0xb1, 0x3c, 0xd3, 0x6d, + 0x88, 0x07, 0x00, 0x00, } func (m *GenesisState) Marshal() (dAtA []byte, err error) { diff --git a/x/ccv/provider/types/query.pb.go b/x/ccv/provider/types/query.pb.go index e961f04a93..71723d293f 100644 --- a/x/ccv/provider/types/query.pb.go +++ b/x/ccv/provider/types/query.pb.go @@ -216,7 +216,6 @@ func (m *QueryConsumerChainsResponse) GetChains() []*Chain { return nil } -// [DEPRECATED] use `QueryConsumersThatAreAboutToStartRequest` instead type QueryConsumerChainStartProposalsRequest struct { } @@ -255,7 +254,6 @@ func (m *QueryConsumerChainStartProposalsRequest) XXX_DiscardUnknown() { var xxx_messageInfo_QueryConsumerChainStartProposalsRequest proto.InternalMessageInfo -// [DEPRECATED] use `QueryConsumersThatAreAboutToStartResponse` instead type QueryConsumerChainStartProposalsResponse struct { Proposals *ConsumerAdditionProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` // Deprecated: Do not use. } @@ -303,93 +301,6 @@ func (m *QueryConsumerChainStartProposalsResponse) GetProposals() *ConsumerAddit return nil } -type QueryConsumersThatAreAboutToStartRequest struct { -} - -func (m *QueryConsumersThatAreAboutToStartRequest) Reset() { - *m = QueryConsumersThatAreAboutToStartRequest{} -} -func (m *QueryConsumersThatAreAboutToStartRequest) String() string { return proto.CompactTextString(m) } -func (*QueryConsumersThatAreAboutToStartRequest) ProtoMessage() {} -func (*QueryConsumersThatAreAboutToStartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{6} -} -func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest.Merge(m, src) -} -func (m *QueryConsumersThatAreAboutToStartRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumersThatAreAboutToStartRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumersThatAreAboutToStartRequest proto.InternalMessageInfo - -type QueryConsumersThatAreAboutToStartResponse struct { - ConsumerIds []string `protobuf:"bytes,1,rep,name=consumer_ids,json=consumerIds,proto3" json:"consumer_ids,omitempty"` -} - -func (m *QueryConsumersThatAreAboutToStartResponse) Reset() { - *m = QueryConsumersThatAreAboutToStartResponse{} -} -func (m *QueryConsumersThatAreAboutToStartResponse) String() string { - return proto.CompactTextString(m) -} -func (*QueryConsumersThatAreAboutToStartResponse) ProtoMessage() {} -func (*QueryConsumersThatAreAboutToStartResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{7} -} -func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse.Merge(m, src) -} -func (m *QueryConsumersThatAreAboutToStartResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumersThatAreAboutToStartResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumersThatAreAboutToStartResponse proto.InternalMessageInfo - -func (m *QueryConsumersThatAreAboutToStartResponse) GetConsumerIds() []string { - if m != nil { - return m.ConsumerIds - } - return nil -} - -// [DEPRECATED] use `QueryConsumersThatAreAboutToStopRequest` instead type QueryConsumerChainStopProposalsRequest struct { } @@ -399,7 +310,7 @@ func (m *QueryConsumerChainStopProposalsRequest) Reset() { func (m *QueryConsumerChainStopProposalsRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerChainStopProposalsRequest) ProtoMessage() {} func (*QueryConsumerChainStopProposalsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{8} + return fileDescriptor_422512d7b7586cd7, []int{6} } func (m *QueryConsumerChainStopProposalsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -428,7 +339,6 @@ func (m *QueryConsumerChainStopProposalsRequest) XXX_DiscardUnknown() { var xxx_messageInfo_QueryConsumerChainStopProposalsRequest proto.InternalMessageInfo -// [DEPRECATED] use `QueryConsumersThatAreAboutToStopResponse` instead type QueryConsumerChainStopProposalsResponse struct { Proposals *ConsumerRemovalProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` // Deprecated: Do not use. } @@ -439,7 +349,7 @@ func (m *QueryConsumerChainStopProposalsResponse) Reset() { func (m *QueryConsumerChainStopProposalsResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerChainStopProposalsResponse) ProtoMessage() {} func (*QueryConsumerChainStopProposalsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{9} + return fileDescriptor_422512d7b7586cd7, []int{7} } func (m *QueryConsumerChainStopProposalsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -476,90 +386,6 @@ func (m *QueryConsumerChainStopProposalsResponse) GetProposals() *ConsumerRemova return nil } -type QueryConsumersThatAreAboutToStopRequest struct { -} - -func (m *QueryConsumersThatAreAboutToStopRequest) Reset() { - *m = QueryConsumersThatAreAboutToStopRequest{} -} -func (m *QueryConsumersThatAreAboutToStopRequest) String() string { return proto.CompactTextString(m) } -func (*QueryConsumersThatAreAboutToStopRequest) ProtoMessage() {} -func (*QueryConsumersThatAreAboutToStopRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{10} -} -func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest.Merge(m, src) -} -func (m *QueryConsumersThatAreAboutToStopRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumersThatAreAboutToStopRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumersThatAreAboutToStopRequest proto.InternalMessageInfo - -type QueryConsumersThatAreAboutToStopResponse struct { - ConsumerIds []string `protobuf:"bytes,1,rep,name=consumer_ids,json=consumerIds,proto3" json:"consumer_ids,omitempty"` -} - -func (m *QueryConsumersThatAreAboutToStopResponse) Reset() { - *m = QueryConsumersThatAreAboutToStopResponse{} -} -func (m *QueryConsumersThatAreAboutToStopResponse) String() string { return proto.CompactTextString(m) } -func (*QueryConsumersThatAreAboutToStopResponse) ProtoMessage() {} -func (*QueryConsumersThatAreAboutToStopResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{11} -} -func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse.Merge(m, src) -} -func (m *QueryConsumersThatAreAboutToStopResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumersThatAreAboutToStopResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumersThatAreAboutToStopResponse proto.InternalMessageInfo - -func (m *QueryConsumersThatAreAboutToStopResponse) GetConsumerIds() []string { - if m != nil { - return m.ConsumerIds - } - return nil -} - type Chain struct { ChainId string `protobuf:"bytes,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` @@ -584,7 +410,7 @@ func (m *Chain) Reset() { *m = Chain{} } func (m *Chain) String() string { return proto.CompactTextString(m) } func (*Chain) ProtoMessage() {} func (*Chain) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{12} + return fileDescriptor_422512d7b7586cd7, []int{8} } func (m *Chain) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -682,7 +508,7 @@ func (m *QueryValidatorConsumerAddrRequest) Reset() { *m = QueryValidato func (m *QueryValidatorConsumerAddrRequest) String() string { return proto.CompactTextString(m) } func (*QueryValidatorConsumerAddrRequest) ProtoMessage() {} func (*QueryValidatorConsumerAddrRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{13} + return fileDescriptor_422512d7b7586cd7, []int{9} } func (m *QueryValidatorConsumerAddrRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -720,7 +546,7 @@ func (m *QueryValidatorConsumerAddrResponse) Reset() { *m = QueryValidat func (m *QueryValidatorConsumerAddrResponse) String() string { return proto.CompactTextString(m) } func (*QueryValidatorConsumerAddrResponse) ProtoMessage() {} func (*QueryValidatorConsumerAddrResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{14} + return fileDescriptor_422512d7b7586cd7, []int{10} } func (m *QueryValidatorConsumerAddrResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -769,7 +595,7 @@ func (m *QueryValidatorProviderAddrRequest) Reset() { *m = QueryValidato func (m *QueryValidatorProviderAddrRequest) String() string { return proto.CompactTextString(m) } func (*QueryValidatorProviderAddrRequest) ProtoMessage() {} func (*QueryValidatorProviderAddrRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{15} + return fileDescriptor_422512d7b7586cd7, []int{11} } func (m *QueryValidatorProviderAddrRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -807,7 +633,7 @@ func (m *QueryValidatorProviderAddrResponse) Reset() { *m = QueryValidat func (m *QueryValidatorProviderAddrResponse) String() string { return proto.CompactTextString(m) } func (*QueryValidatorProviderAddrResponse) ProtoMessage() {} func (*QueryValidatorProviderAddrResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{16} + return fileDescriptor_422512d7b7586cd7, []int{12} } func (m *QueryValidatorProviderAddrResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -850,7 +676,7 @@ func (m *QueryThrottleStateRequest) Reset() { *m = QueryThrottleStateReq func (m *QueryThrottleStateRequest) String() string { return proto.CompactTextString(m) } func (*QueryThrottleStateRequest) ProtoMessage() {} func (*QueryThrottleStateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{17} + return fileDescriptor_422512d7b7586cd7, []int{13} } func (m *QueryThrottleStateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -894,7 +720,7 @@ func (m *QueryThrottleStateResponse) Reset() { *m = QueryThrottleStateRe func (m *QueryThrottleStateResponse) String() string { return proto.CompactTextString(m) } func (*QueryThrottleStateResponse) ProtoMessage() {} func (*QueryThrottleStateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{18} + return fileDescriptor_422512d7b7586cd7, []int{14} } func (m *QueryThrottleStateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -955,7 +781,7 @@ func (m *QueryRegisteredConsumerRewardDenomsRequest) String() string { } func (*QueryRegisteredConsumerRewardDenomsRequest) ProtoMessage() {} func (*QueryRegisteredConsumerRewardDenomsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{19} + return fileDescriptor_422512d7b7586cd7, []int{15} } func (m *QueryRegisteredConsumerRewardDenomsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -996,7 +822,7 @@ func (m *QueryRegisteredConsumerRewardDenomsResponse) String() string { } func (*QueryRegisteredConsumerRewardDenomsResponse) ProtoMessage() {} func (*QueryRegisteredConsumerRewardDenomsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{20} + return fileDescriptor_422512d7b7586cd7, []int{16} } func (m *QueryRegisteredConsumerRewardDenomsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1039,7 +865,7 @@ func (m *QueryProposedChainIDsRequest) Reset() { *m = QueryProposedChain func (m *QueryProposedChainIDsRequest) String() string { return proto.CompactTextString(m) } func (*QueryProposedChainIDsRequest) ProtoMessage() {} func (*QueryProposedChainIDsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{21} + return fileDescriptor_422512d7b7586cd7, []int{17} } func (m *QueryProposedChainIDsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1076,7 +902,7 @@ func (m *QueryProposedChainIDsResponse) Reset() { *m = QueryProposedChai func (m *QueryProposedChainIDsResponse) String() string { return proto.CompactTextString(m) } func (*QueryProposedChainIDsResponse) ProtoMessage() {} func (*QueryProposedChainIDsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{22} + return fileDescriptor_422512d7b7586cd7, []int{18} } func (m *QueryProposedChainIDsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1123,7 +949,7 @@ func (m *ProposedChain) Reset() { *m = ProposedChain{} } func (m *ProposedChain) String() string { return proto.CompactTextString(m) } func (*ProposedChain) ProtoMessage() {} func (*ProposedChain) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{23} + return fileDescriptor_422512d7b7586cd7, []int{19} } func (m *ProposedChain) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1189,7 +1015,7 @@ func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) String() string { } func (*QueryAllPairsValConAddrByConsumerChainIDRequest) ProtoMessage() {} func (*QueryAllPairsValConAddrByConsumerChainIDRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{24} + return fileDescriptor_422512d7b7586cd7, []int{20} } func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1245,7 +1071,7 @@ func (m *QueryAllPairsValConAddrByConsumerChainIDResponse) String() string { } func (*QueryAllPairsValConAddrByConsumerChainIDResponse) ProtoMessage() {} func (*QueryAllPairsValConAddrByConsumerChainIDResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{25} + return fileDescriptor_422512d7b7586cd7, []int{21} } func (m *QueryAllPairsValConAddrByConsumerChainIDResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1293,7 +1119,7 @@ func (m *PairValConAddrProviderAndConsumer) Reset() { *m = PairValConAdd func (m *PairValConAddrProviderAndConsumer) String() string { return proto.CompactTextString(m) } func (*PairValConAddrProviderAndConsumer) ProtoMessage() {} func (*PairValConAddrProviderAndConsumer) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{26} + return fileDescriptor_422512d7b7586cd7, []int{22} } func (m *PairValConAddrProviderAndConsumer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1350,7 +1176,7 @@ func (m *QueryParamsRequest) Reset() { *m = QueryParamsRequest{} } func (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) } func (*QueryParamsRequest) ProtoMessage() {} func (*QueryParamsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{27} + return fileDescriptor_422512d7b7586cd7, []int{23} } func (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1387,7 +1213,7 @@ func (m *QueryParamsResponse) Reset() { *m = QueryParamsResponse{} } func (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) } func (*QueryParamsResponse) ProtoMessage() {} func (*QueryParamsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{28} + return fileDescriptor_422512d7b7586cd7, []int{24} } func (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1437,7 +1263,7 @@ func (m *QueryConsumerChainOptedInValidatorsRequest) String() string { } func (*QueryConsumerChainOptedInValidatorsRequest) ProtoMessage() {} func (*QueryConsumerChainOptedInValidatorsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{29} + return fileDescriptor_422512d7b7586cd7, []int{25} } func (m *QueryConsumerChainOptedInValidatorsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1494,7 +1320,7 @@ func (m *QueryConsumerChainOptedInValidatorsResponse) String() string { } func (*QueryConsumerChainOptedInValidatorsResponse) ProtoMessage() {} func (*QueryConsumerChainOptedInValidatorsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{30} + return fileDescriptor_422512d7b7586cd7, []int{26} } func (m *QueryConsumerChainOptedInValidatorsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1540,7 +1366,7 @@ func (m *QueryConsumerValidatorsRequest) Reset() { *m = QueryConsumerVal func (m *QueryConsumerValidatorsRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsRequest) ProtoMessage() {} func (*QueryConsumerValidatorsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{31} + return fileDescriptor_422512d7b7586cd7, []int{27} } func (m *QueryConsumerValidatorsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1619,7 +1445,7 @@ func (m *QueryConsumerValidatorsValidator) Reset() { *m = QueryConsumerV func (m *QueryConsumerValidatorsValidator) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsValidator) ProtoMessage() {} func (*QueryConsumerValidatorsValidator) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{32} + return fileDescriptor_422512d7b7586cd7, []int{28} } func (m *QueryConsumerValidatorsValidator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1727,7 +1553,7 @@ func (m *QueryConsumerValidatorsResponse) Reset() { *m = QueryConsumerVa func (m *QueryConsumerValidatorsResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsResponse) ProtoMessage() {} func (*QueryConsumerValidatorsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{33} + return fileDescriptor_422512d7b7586cd7, []int{29} } func (m *QueryConsumerValidatorsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1776,7 +1602,7 @@ func (m *QueryConsumerChainsValidatorHasToValidateRequest) String() string { } func (*QueryConsumerChainsValidatorHasToValidateRequest) ProtoMessage() {} func (*QueryConsumerChainsValidatorHasToValidateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{34} + return fileDescriptor_422512d7b7586cd7, []int{30} } func (m *QueryConsumerChainsValidatorHasToValidateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1824,7 +1650,7 @@ func (m *QueryConsumerChainsValidatorHasToValidateResponse) String() string { } func (*QueryConsumerChainsValidatorHasToValidateResponse) ProtoMessage() {} func (*QueryConsumerChainsValidatorHasToValidateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{35} + return fileDescriptor_422512d7b7586cd7, []int{31} } func (m *QueryConsumerChainsValidatorHasToValidateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1876,7 +1702,7 @@ func (m *QueryValidatorConsumerCommissionRateRequest) String() string { } func (*QueryValidatorConsumerCommissionRateRequest) ProtoMessage() {} func (*QueryValidatorConsumerCommissionRateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{36} + return fileDescriptor_422512d7b7586cd7, []int{32} } func (m *QueryValidatorConsumerCommissionRateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1940,7 +1766,7 @@ func (m *QueryValidatorConsumerCommissionRateResponse) String() string { } func (*QueryValidatorConsumerCommissionRateResponse) ProtoMessage() {} func (*QueryValidatorConsumerCommissionRateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{37} + return fileDescriptor_422512d7b7586cd7, []int{33} } func (m *QueryValidatorConsumerCommissionRateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1976,7 +1802,7 @@ func (m *QueryBlocksUntilNextEpochRequest) Reset() { *m = QueryBlocksUnt func (m *QueryBlocksUntilNextEpochRequest) String() string { return proto.CompactTextString(m) } func (*QueryBlocksUntilNextEpochRequest) ProtoMessage() {} func (*QueryBlocksUntilNextEpochRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{38} + return fileDescriptor_422512d7b7586cd7, []int{34} } func (m *QueryBlocksUntilNextEpochRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2014,7 +1840,7 @@ func (m *QueryBlocksUntilNextEpochResponse) Reset() { *m = QueryBlocksUn func (m *QueryBlocksUntilNextEpochResponse) String() string { return proto.CompactTextString(m) } func (*QueryBlocksUntilNextEpochResponse) ProtoMessage() {} func (*QueryBlocksUntilNextEpochResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{39} + return fileDescriptor_422512d7b7586cd7, []int{35} } func (m *QueryBlocksUntilNextEpochResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2060,7 +1886,7 @@ func (m *QueryConsumerIdFromClientIdRequest) Reset() { *m = QueryConsume func (m *QueryConsumerIdFromClientIdRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerIdFromClientIdRequest) ProtoMessage() {} func (*QueryConsumerIdFromClientIdRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{40} + return fileDescriptor_422512d7b7586cd7, []int{36} } func (m *QueryConsumerIdFromClientIdRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2105,7 +1931,7 @@ func (m *QueryConsumerIdFromClientIdResponse) Reset() { *m = QueryConsum func (m *QueryConsumerIdFromClientIdResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerIdFromClientIdResponse) ProtoMessage() {} func (*QueryConsumerIdFromClientIdResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{41} + return fileDescriptor_422512d7b7586cd7, []int{37} } func (m *QueryConsumerIdFromClientIdResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2148,12 +1974,8 @@ func init() { proto.RegisterType((*QueryConsumerChainsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainsResponse") proto.RegisterType((*QueryConsumerChainStartProposalsRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStartProposalsRequest") proto.RegisterType((*QueryConsumerChainStartProposalsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStartProposalsResponse") - proto.RegisterType((*QueryConsumersThatAreAboutToStartRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStartRequest") - proto.RegisterType((*QueryConsumersThatAreAboutToStartResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStartResponse") proto.RegisterType((*QueryConsumerChainStopProposalsRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStopProposalsRequest") proto.RegisterType((*QueryConsumerChainStopProposalsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStopProposalsResponse") - proto.RegisterType((*QueryConsumersThatAreAboutToStopRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStopRequest") - proto.RegisterType((*QueryConsumersThatAreAboutToStopResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumersThatAreAboutToStopResponse") proto.RegisterType((*Chain)(nil), "interchain_security.ccv.provider.v1.Chain") proto.RegisterType((*QueryValidatorConsumerAddrRequest)(nil), "interchain_security.ccv.provider.v1.QueryValidatorConsumerAddrRequest") proto.RegisterType((*QueryValidatorConsumerAddrResponse)(nil), "interchain_security.ccv.provider.v1.QueryValidatorConsumerAddrResponse") @@ -2191,167 +2013,159 @@ func init() { } var fileDescriptor_422512d7b7586cd7 = []byte{ - // 2547 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xdb, 0x6f, 0x1c, 0x49, - 0xd5, 0x77, 0x8f, 0x2f, 0xb1, 0xcb, 0x89, 0xb3, 0x5b, 0xb9, 0x4d, 0xc6, 0x8e, 0xc7, 0xe9, 0x6c, - 0xbe, 0xcf, 0x71, 0x92, 0x19, 0xdb, 0xab, 0x65, 0x37, 0x81, 0x6c, 0xe2, 0x19, 0xc7, 0xd9, 0x21, - 0x37, 0x6f, 0xc7, 0x09, 0xc8, 0xab, 0xd0, 0x69, 0x77, 0x17, 0xe3, 0xc6, 0x3d, 0x5d, 0xed, 0xae, - 0x9a, 0x49, 0x46, 0x51, 0x24, 0x6e, 0x0f, 0x61, 0x41, 0x10, 0x84, 0x90, 0x78, 0xdc, 0x17, 0x24, - 0x1e, 0x90, 0x90, 0xd0, 0x0a, 0xc4, 0xdb, 0x3e, 0xee, 0x1b, 0xcb, 0xee, 0x0b, 0x02, 0x29, 0xa0, - 0x84, 0x07, 0x84, 0x84, 0x84, 0x16, 0xfe, 0x00, 0xd4, 0xd5, 0xd5, 0xd7, 0xe9, 0x19, 0xf7, 0x5c, - 0x1e, 0x78, 0x73, 0x57, 0x9d, 0xfa, 0xd5, 0x39, 0xa7, 0xce, 0x39, 0x75, 0xea, 0xe7, 0x01, 0x45, - 0xdd, 0xa4, 0xc8, 0x56, 0xb7, 0x15, 0xdd, 0x94, 0x09, 0x52, 0xeb, 0xb6, 0x4e, 0x9b, 0x45, 0x55, - 0x6d, 0x14, 0x2d, 0x1b, 0x37, 0x74, 0x0d, 0xd9, 0xc5, 0xc6, 0x52, 0x71, 0xb7, 0x8e, 0xec, 0x66, - 0xc1, 0xb2, 0x31, 0xc5, 0xf0, 0x54, 0xc2, 0x82, 0x82, 0xaa, 0x36, 0x0a, 0xde, 0x82, 0x42, 0x63, - 0x29, 0x37, 0x53, 0xc5, 0xb8, 0x6a, 0xa0, 0xa2, 0x62, 0xe9, 0x45, 0xc5, 0x34, 0x31, 0x55, 0xa8, - 0x8e, 0x4d, 0xe2, 0x42, 0xe4, 0x0e, 0x57, 0x71, 0x15, 0xb3, 0x3f, 0x8b, 0xce, 0x5f, 0x7c, 0x34, - 0xcf, 0xd7, 0xb0, 0xaf, 0xad, 0xfa, 0xd7, 0x8b, 0x54, 0xaf, 0x21, 0x42, 0x95, 0x9a, 0xc5, 0x05, - 0x96, 0xd3, 0xa8, 0xea, 0x6b, 0xe1, 0xae, 0x59, 0x6c, 0xb7, 0xa6, 0xb1, 0x54, 0x24, 0xdb, 0x8a, - 0x8d, 0x34, 0x59, 0xc5, 0x26, 0xa9, 0xd7, 0xfc, 0x15, 0xa7, 0x3b, 0xac, 0x78, 0xa8, 0xdb, 0x88, - 0x8b, 0xcd, 0x50, 0x64, 0x6a, 0xc8, 0xae, 0xe9, 0x26, 0x2d, 0xaa, 0x76, 0xd3, 0xa2, 0xb8, 0xb8, - 0x83, 0x9a, 0x9e, 0x85, 0xc7, 0x55, 0x4c, 0x6a, 0x98, 0xc8, 0xae, 0x91, 0xee, 0x07, 0x9f, 0x7a, - 0xcd, 0xfd, 0x2a, 0x12, 0xaa, 0xec, 0xe8, 0x66, 0xb5, 0xd8, 0x58, 0xda, 0x42, 0x54, 0x59, 0xf2, - 0xbe, 0x5d, 0x29, 0xf1, 0x3e, 0x98, 0x7e, 0xd7, 0x71, 0x7a, 0x99, 0x2b, 0x77, 0x0d, 0x99, 0x88, - 0xe8, 0x44, 0x42, 0xbb, 0x75, 0x44, 0x28, 0x3c, 0x01, 0xc6, 0x5d, 0x0d, 0x75, 0x2d, 0x2b, 0xcc, - 0x09, 0xf3, 0x13, 0xa5, 0x4c, 0x56, 0x90, 0xf6, 0xb1, 0xb1, 0x8a, 0x06, 0xf3, 0x60, 0xd2, 0xb3, - 0xca, 0x91, 0xc8, 0x38, 0x12, 0x12, 0xf0, 0x86, 0x2a, 0x9a, 0xf8, 0x18, 0xcc, 0x24, 0xc3, 0x13, - 0x0b, 0x9b, 0x04, 0xc1, 0xf7, 0xc0, 0x81, 0xaa, 0x3b, 0x24, 0x13, 0xaa, 0x50, 0xc4, 0x36, 0x99, - 0x5c, 0x5e, 0x2c, 0xb4, 0x3b, 0xfc, 0xc6, 0x52, 0x21, 0x86, 0x75, 0xc7, 0x59, 0x57, 0x1a, 0xf9, - 0xf8, 0x79, 0x7e, 0x48, 0xda, 0x5f, 0x0d, 0x8d, 0x89, 0x33, 0x20, 0x17, 0xd9, 0xbc, 0xec, 0xc0, - 0x79, 0xa6, 0x89, 0x4a, 0xcc, 0x72, 0x6f, 0x96, 0x6b, 0x56, 0x02, 0x63, 0x6c, 0x7b, 0x92, 0x15, - 0xe6, 0x86, 0xe7, 0x27, 0x97, 0x17, 0x0a, 0x29, 0xe2, 0xb1, 0xc0, 0x40, 0x24, 0xbe, 0x52, 0x3c, - 0x03, 0xfe, 0xbf, 0x75, 0x8b, 0x3b, 0x54, 0xb1, 0xe9, 0xba, 0x8d, 0x2d, 0x4c, 0x14, 0xc3, 0xd7, - 0xe6, 0x07, 0x02, 0x98, 0xdf, 0x5b, 0x96, 0xeb, 0xf6, 0x00, 0x4c, 0x58, 0xde, 0x20, 0xf7, 0xd8, - 0xdb, 0xe9, 0xd4, 0xe3, 0xe0, 0x2b, 0x9a, 0xa6, 0x3b, 0x89, 0xe2, 0x43, 0xb3, 0x63, 0x0d, 0x40, - 0xc5, 0x85, 0x98, 0x36, 0x64, 0x63, 0x5b, 0xa1, 0x2b, 0x36, 0x5a, 0xd9, 0xc2, 0x75, 0xba, 0x81, - 0x99, 0x5e, 0x9e, 0xea, 0xb7, 0xc0, 0x99, 0x14, 0xb2, 0x5c, 0xf5, 0x93, 0x60, 0x7f, 0x28, 0x62, - 0x5c, 0xe7, 0x4e, 0x48, 0x93, 0x41, 0xc8, 0x10, 0x71, 0x1e, 0xfc, 0x5f, 0x92, 0x27, 0xb0, 0xd5, - 0xe2, 0xb4, 0xf7, 0x85, 0x64, 0x07, 0x47, 0x44, 0xf9, 0xc6, 0x72, 0xab, 0xcf, 0x2e, 0x75, 0xe5, - 0x33, 0x09, 0xd5, 0x70, 0x43, 0x31, 0xda, 0xba, 0x2c, 0x7e, 0xd8, 0x2d, 0x6e, 0xc0, 0x96, 0xa7, - 0xf7, 0xcd, 0xbd, 0xbc, 0xeb, 0x88, 0xa6, 0x77, 0xd8, 0xcf, 0x32, 0x60, 0x94, 0x59, 0x0e, 0x8f, - 0xc7, 0xd3, 0x35, 0x48, 0xd5, 0x69, 0x30, 0xa1, 0x1a, 0x3a, 0x32, 0x69, 0x90, 0xa8, 0xe3, 0xee, - 0x40, 0x45, 0x83, 0x87, 0xc0, 0x28, 0xc5, 0x96, 0x7c, 0x2b, 0x3b, 0x3c, 0x27, 0xcc, 0x1f, 0x90, - 0x46, 0x28, 0xb6, 0x6e, 0xc1, 0x05, 0x00, 0x6b, 0xba, 0x29, 0x5b, 0xf8, 0xa1, 0xb3, 0xb5, 0x29, - 0xbb, 0x12, 0x23, 0x73, 0xc2, 0xfc, 0xb0, 0x34, 0x55, 0xd3, 0xcd, 0x75, 0x67, 0xa2, 0x62, 0x6e, - 0x38, 0xb2, 0x8b, 0xe0, 0x70, 0x43, 0x31, 0x74, 0x4d, 0xa1, 0xd8, 0x26, 0x7c, 0x89, 0xaa, 0x58, - 0xd9, 0x51, 0x86, 0x07, 0x83, 0x39, 0xb6, 0xa8, 0xac, 0x58, 0x70, 0x01, 0xbc, 0xea, 0x8f, 0xca, - 0x04, 0x51, 0x26, 0x3e, 0xc6, 0xc4, 0x0f, 0xfa, 0x13, 0x77, 0x10, 0x75, 0x64, 0x67, 0xc0, 0x84, - 0x62, 0x18, 0xf8, 0xa1, 0xa1, 0x13, 0x9a, 0xdd, 0xc7, 0x1c, 0x10, 0x0c, 0xc0, 0x1c, 0x18, 0xd7, - 0x90, 0xd9, 0x64, 0x93, 0xe3, 0x6c, 0xd2, 0xff, 0x16, 0x7f, 0x29, 0x80, 0x93, 0xcc, 0xd5, 0xf7, - 0x3c, 0xc8, 0x50, 0x0a, 0xd8, 0x29, 0xab, 0xdc, 0x25, 0xf0, 0x8a, 0x17, 0x10, 0xb2, 0xa2, 0x69, - 0x36, 0x22, 0xc4, 0xf5, 0x60, 0x09, 0x7e, 0xfe, 0x3c, 0x3f, 0xd5, 0x54, 0x6a, 0xc6, 0x45, 0x91, - 0x4f, 0x88, 0xd2, 0x41, 0x4f, 0x76, 0xc5, 0x1d, 0x89, 0x17, 0xc9, 0xe1, 0x78, 0x91, 0xbc, 0x38, - 0xfe, 0xf4, 0x83, 0xfc, 0xd0, 0xdf, 0x3f, 0xc8, 0x0f, 0x89, 0xb7, 0x81, 0xd8, 0x49, 0x5b, 0x1e, - 0x12, 0x67, 0xc0, 0x2b, 0x3e, 0xa0, 0xa7, 0x8f, 0x7b, 0xda, 0x07, 0xd5, 0x90, 0xbc, 0xa3, 0x4d, - 0xab, 0xfd, 0xeb, 0x21, 0xed, 0xd2, 0xdb, 0xdf, 0xb2, 0x5f, 0x07, 0xfb, 0x63, 0x3a, 0xf4, 0x65, - 0x7f, 0x54, 0xdb, 0xc0, 0xfe, 0x96, 0xf3, 0xe0, 0xf6, 0xc7, 0x7c, 0x2f, 0x4e, 0x83, 0xe3, 0x0c, - 0x70, 0x63, 0xdb, 0xc6, 0x94, 0x1a, 0x88, 0x5d, 0x0c, 0x5e, 0x1a, 0xfe, 0x41, 0xe0, 0x17, 0x44, - 0x6c, 0x96, 0x6f, 0x93, 0x07, 0x93, 0xc4, 0x50, 0xc8, 0xb6, 0x5c, 0x43, 0x14, 0xd9, 0x6c, 0x87, - 0x61, 0x09, 0xb0, 0xa1, 0x9b, 0xce, 0x08, 0x5c, 0x06, 0x47, 0x42, 0x02, 0x32, 0x8b, 0x48, 0xc5, - 0x54, 0x11, 0x73, 0xce, 0xb0, 0x74, 0x28, 0x10, 0x5d, 0xf1, 0xa6, 0xe0, 0xd7, 0x40, 0xd6, 0x44, - 0x8f, 0xa8, 0x6c, 0x23, 0xcb, 0x40, 0xa6, 0x4e, 0xb6, 0x65, 0x55, 0x31, 0x35, 0xc7, 0x58, 0xc4, - 0x3c, 0x33, 0xb9, 0x9c, 0x2b, 0xb8, 0xfd, 0x49, 0xc1, 0xeb, 0x4f, 0x0a, 0x1b, 0x5e, 0x7f, 0x52, - 0x1a, 0x77, 0x6e, 0xb9, 0x67, 0x7f, 0xc9, 0x0b, 0xd2, 0x51, 0x07, 0x45, 0xf2, 0x40, 0xca, 0x1e, - 0x86, 0x78, 0x0e, 0x2c, 0x30, 0x93, 0x24, 0x54, 0xd5, 0x09, 0x45, 0x36, 0xd2, 0x82, 0xfa, 0xf5, - 0x50, 0xb1, 0xb5, 0x55, 0x64, 0xe2, 0x9a, 0x5f, 0x40, 0xaf, 0x82, 0xb3, 0xa9, 0xa4, 0xb9, 0x47, - 0x8e, 0x82, 0x31, 0x8d, 0x8d, 0xf0, 0x2a, 0xc4, 0xbf, 0xc4, 0x59, 0x7e, 0xcb, 0xbb, 0xb5, 0x11, - 0x69, 0xac, 0x18, 0x55, 0x56, 0xfd, 0x6d, 0xbe, 0x25, 0x80, 0x13, 0x6d, 0x04, 0xfc, 0x1b, 0x6d, - 0xca, 0x0a, 0xcf, 0x79, 0xb7, 0xee, 0x72, 0xaa, 0x12, 0x1d, 0x81, 0xe5, 0xad, 0x40, 0x0c, 0x4f, - 0x34, 0xc1, 0x81, 0x88, 0x18, 0x9c, 0x01, 0x3c, 0xc0, 0x57, 0x5b, 0x63, 0x7e, 0x15, 0xce, 0x02, - 0xe0, 0x95, 0xf6, 0xca, 0x2a, 0x3b, 0xd0, 0x11, 0x29, 0x34, 0xb2, 0x67, 0x50, 0x8b, 0xbb, 0xa0, - 0xc8, 0x4c, 0x5e, 0x31, 0x8c, 0x75, 0x45, 0xb7, 0xc9, 0x3d, 0xc5, 0x28, 0x63, 0xd3, 0x89, 0xcb, - 0x52, 0xf4, 0xba, 0xaa, 0xac, 0x0e, 0xaa, 0xd9, 0xfa, 0xb9, 0x00, 0x16, 0xd3, 0xef, 0xc9, 0x3d, - 0xbf, 0x0b, 0x5e, 0xb5, 0x14, 0xdd, 0x96, 0x1b, 0x8a, 0xe1, 0x74, 0xa8, 0x2c, 0xa1, 0xb8, 0xf3, - 0xd7, 0xd2, 0x39, 0x5f, 0xd1, 0xed, 0x60, 0x23, 0x3f, 0x61, 0xcd, 0x20, 0x94, 0xa6, 0xac, 0x88, - 0x88, 0xf8, 0x1f, 0x01, 0x9c, 0xdc, 0x73, 0x15, 0x5c, 0x6b, 0x97, 0xe5, 0xa5, 0xe9, 0xcf, 0x9f, - 0xe7, 0x8f, 0xb9, 0x55, 0x27, 0x2e, 0x91, 0x50, 0x7e, 0xd7, 0xda, 0x56, 0xaf, 0x10, 0x4e, 0x5c, - 0x22, 0xa1, 0x8c, 0x5d, 0x0e, 0x5d, 0xc4, 0x3b, 0xa8, 0xc9, 0xb3, 0x75, 0xa6, 0x10, 0xf4, 0xe7, - 0x05, 0xb7, 0x3f, 0x2f, 0xac, 0xd7, 0xb7, 0x0c, 0x5d, 0xbd, 0x8e, 0x9a, 0xc1, 0x35, 0x7d, 0x1d, - 0x35, 0xc5, 0xc3, 0x00, 0xba, 0x49, 0xa0, 0xd8, 0x4a, 0x90, 0x82, 0x0f, 0xc0, 0xa1, 0xc8, 0x28, - 0x3f, 0x96, 0x0a, 0x18, 0xb3, 0xd8, 0x08, 0xef, 0x55, 0xce, 0xa6, 0x3c, 0x0b, 0x67, 0x09, 0xcf, - 0x00, 0x0e, 0x20, 0x1a, 0xbc, 0x24, 0x44, 0x22, 0xe0, 0xb6, 0x45, 0x91, 0x56, 0x31, 0xfd, 0x42, - 0x3b, 0xb0, 0x8e, 0x7f, 0x97, 0x97, 0x94, 0xbd, 0x76, 0xf3, 0xdb, 0xec, 0x13, 0xe1, 0xc6, 0x21, - 0x76, 0x9c, 0xc8, 0xab, 0x34, 0xd3, 0xa1, 0x0e, 0x22, 0x7a, 0xbe, 0x88, 0x88, 0x0f, 0xc0, 0x6c, - 0x64, 0xcb, 0xc1, 0x1b, 0xf5, 0xe3, 0x7d, 0x60, 0xae, 0xcd, 0x16, 0xfe, 0x5f, 0x89, 0x6d, 0x82, - 0x90, 0xbe, 0x4d, 0x88, 0xc7, 0x57, 0xa6, 0xcb, 0xf8, 0x82, 0x59, 0x30, 0xca, 0x1a, 0x2f, 0x16, - 0x99, 0xc3, 0xcc, 0x42, 0x77, 0x00, 0x5e, 0x00, 0x23, 0xb6, 0x73, 0xc1, 0x8c, 0x30, 0x6d, 0x4e, - 0x3b, 0xd1, 0xf1, 0xa7, 0xe7, 0xf9, 0x69, 0xf7, 0x81, 0x48, 0xb4, 0x9d, 0x82, 0x8e, 0x8b, 0x35, - 0x85, 0x6e, 0x17, 0x6e, 0xa0, 0xaa, 0xa2, 0x36, 0x57, 0x91, 0x9a, 0x15, 0x24, 0xb6, 0x04, 0x9e, - 0x06, 0x53, 0xbe, 0x56, 0x2e, 0xfa, 0x28, 0xbb, 0xdc, 0x0e, 0x78, 0xa3, 0xac, 0xa1, 0x83, 0xf7, - 0x41, 0xd6, 0x17, 0x53, 0x71, 0xad, 0xa6, 0x13, 0xa2, 0x63, 0x53, 0x66, 0xbb, 0x8e, 0xb1, 0x5d, - 0x4f, 0xa5, 0xd8, 0x55, 0x3a, 0xea, 0x81, 0x94, 0x7d, 0x0c, 0xc9, 0xd1, 0xe2, 0x3e, 0xc8, 0xfa, - 0xae, 0x8d, 0xc3, 0xef, 0xeb, 0x02, 0xde, 0x03, 0x89, 0xc1, 0x5f, 0x07, 0x93, 0x1a, 0x22, 0xaa, - 0xad, 0x5b, 0xce, 0xa3, 0x28, 0x3b, 0xce, 0x3c, 0x7f, 0xaa, 0xc0, 0x9f, 0xd3, 0xde, 0x83, 0x99, - 0x3f, 0xa0, 0x0b, 0xab, 0x81, 0x28, 0xcf, 0xb4, 0xf0, 0x6a, 0x78, 0x1f, 0x1c, 0xf7, 0x75, 0xc5, - 0x16, 0xb2, 0x59, 0x83, 0xeb, 0xc5, 0xc3, 0x04, 0x53, 0xf6, 0xe4, 0xa7, 0x1f, 0x9e, 0x3f, 0xc1, - 0xd1, 0xfd, 0xf8, 0xe1, 0x71, 0x70, 0x87, 0xda, 0xba, 0x59, 0x95, 0x8e, 0x79, 0x18, 0xb7, 0x39, - 0x84, 0x17, 0x26, 0x47, 0xc1, 0xd8, 0x37, 0x14, 0xdd, 0x40, 0x5a, 0x16, 0xcc, 0x09, 0xf3, 0xe3, - 0x12, 0xff, 0x82, 0x17, 0xc1, 0x98, 0xf3, 0x82, 0xae, 0x93, 0xec, 0xe4, 0x9c, 0x30, 0x3f, 0xb5, - 0x2c, 0xb6, 0x53, 0xbf, 0x84, 0x4d, 0xed, 0x0e, 0x93, 0x94, 0xf8, 0x0a, 0xb8, 0x01, 0xfc, 0x68, - 0x94, 0x29, 0xde, 0x41, 0x26, 0xc9, 0xee, 0x67, 0x8a, 0x9e, 0xe5, 0x5e, 0x3d, 0xd2, 0xea, 0xd5, - 0x8a, 0x49, 0x3f, 0xfd, 0xf0, 0x3c, 0xe0, 0x9b, 0x54, 0x4c, 0xca, 0x6e, 0x5c, 0x86, 0xb1, 0xc1, - 0x20, 0x9c, 0xd0, 0xf1, 0x51, 0xdd, 0xd0, 0x39, 0xe0, 0x86, 0x8e, 0x37, 0xea, 0x86, 0xce, 0x17, - 0xc0, 0x31, 0x9e, 0xdc, 0x88, 0xc8, 0x6a, 0xdd, 0xb6, 0x9d, 0x37, 0x0a, 0xb2, 0xb0, 0xba, 0x9d, - 0x9d, 0x62, 0x16, 0x1e, 0xf1, 0xa7, 0xcb, 0xee, 0xec, 0x55, 0x67, 0x52, 0x7c, 0x2a, 0x80, 0x7c, - 0xdb, 0xb4, 0xe7, 0xd5, 0x05, 0x01, 0x10, 0x14, 0x0e, 0x7e, 0xab, 0x5d, 0x4d, 0x55, 0x49, 0xf7, - 0xca, 0x76, 0x29, 0x04, 0x2c, 0xee, 0xf2, 0x7b, 0x37, 0x4a, 0x25, 0xf8, 0xb2, 0xef, 0x28, 0x64, - 0x03, 0xf3, 0x2f, 0xaf, 0xf9, 0xec, 0xb3, 0x5a, 0x88, 0x0a, 0x58, 0xea, 0x62, 0x4b, 0xee, 0x8e, - 0x73, 0x00, 0x06, 0x59, 0xca, 0xeb, 0xa1, 0x57, 0x61, 0xfd, 0x4b, 0xd2, 0x6d, 0x10, 0x34, 0xf6, - 0x76, 0x38, 0x9b, 0xfc, 0x1a, 0x89, 0xa6, 0xcf, 0xff, 0xc6, 0x2b, 0x4a, 0xac, 0x82, 0x73, 0xe9, - 0xb4, 0xe5, 0xce, 0x78, 0x93, 0x17, 0x45, 0x21, 0x7d, 0xfd, 0x60, 0x0b, 0x44, 0x91, 0xdf, 0x05, - 0x25, 0x03, 0xab, 0x3b, 0xe4, 0xae, 0x49, 0x75, 0xe3, 0x16, 0x7a, 0xe4, 0x46, 0xa5, 0x77, 0xab, - 0x6f, 0xf2, 0x67, 0x57, 0xb2, 0x0c, 0xd7, 0xe0, 0x0d, 0x70, 0x6c, 0x8b, 0xcd, 0xcb, 0x75, 0x47, - 0x40, 0x66, 0x0f, 0x03, 0x37, 0xf2, 0x05, 0xd6, 0x70, 0x1e, 0xde, 0x4a, 0x58, 0x2e, 0xae, 0xf0, - 0x47, 0x52, 0xd9, 0xb7, 0x7d, 0xcd, 0xc6, 0xb5, 0x32, 0x7f, 0xcb, 0x7b, 0xa7, 0x11, 0x79, 0xef, - 0x0b, 0xd1, 0xf7, 0xbe, 0xb8, 0x06, 0x4e, 0x75, 0x84, 0x08, 0x5e, 0x40, 0x61, 0x9f, 0x0b, 0x71, - 0x9f, 0x2f, 0xff, 0x6a, 0x1e, 0x8c, 0x32, 0x20, 0xf8, 0x8b, 0x0c, 0x38, 0x9c, 0xc4, 0xf4, 0xc1, - 0x2b, 0xdd, 0xa7, 0x5b, 0x94, 0x83, 0xcc, 0xad, 0xf4, 0x81, 0xe0, 0x1a, 0x22, 0xbe, 0x2f, 0x7c, - 0xfb, 0xb3, 0xbf, 0xfd, 0x24, 0xf3, 0x1d, 0x61, 0xb3, 0x04, 0xaf, 0xec, 0xcd, 0x44, 0xfb, 0x46, - 0x73, 0x3a, 0xb1, 0xf8, 0x38, 0xe4, 0x86, 0x27, 0xf0, 0x52, 0x4f, 0x08, 0x3c, 0x35, 0x9e, 0xc0, - 0xcf, 0x04, 0xde, 0xf2, 0x45, 0x73, 0x17, 0x5e, 0xee, 0xde, 0xce, 0x08, 0xa3, 0x99, 0xbb, 0xd2, - 0x3b, 0x00, 0xf7, 0xd3, 0x05, 0xe6, 0xa6, 0xd7, 0xe1, 0x52, 0x17, 0x16, 0xba, 0x5c, 0x27, 0xfc, - 0x6e, 0x06, 0x64, 0xdb, 0x10, 0x98, 0x04, 0xde, 0xe8, 0x51, 0xb3, 0x44, 0xae, 0x34, 0x77, 0x73, - 0x40, 0x68, 0xdc, 0xe8, 0xeb, 0xcc, 0xe8, 0xee, 0x02, 0x83, 0x0b, 0x39, 0x80, 0xb2, 0x4f, 0x01, - 0x3e, 0xcd, 0x08, 0xf0, 0x47, 0x19, 0x9e, 0xf9, 0x9d, 0xd8, 0x50, 0xd8, 0x83, 0x05, 0x1d, 0x18, - 0xd8, 0xdc, 0xad, 0x41, 0xc1, 0x45, 0x3c, 0x72, 0x15, 0x96, 0xd3, 0x7b, 0x84, 0xc8, 0x74, 0x5b, - 0xa1, 0xb2, 0x62, 0x23, 0x59, 0x71, 0x20, 0x65, 0x8a, 0x5d, 0xf7, 0xc0, 0x6f, 0x66, 0xc0, 0xb1, - 0x64, 0x92, 0x96, 0xc0, 0xeb, 0x3d, 0x9f, 0x64, 0x2b, 0x1b, 0x9c, 0xbb, 0x31, 0x18, 0x30, 0xee, - 0x83, 0x2f, 0x33, 0x1f, 0xac, 0xc0, 0xcb, 0x3d, 0x44, 0x05, 0xb6, 0xa2, 0x41, 0xf1, 0xfd, 0x4c, - 0xec, 0xf9, 0x90, 0x40, 0xf8, 0xf6, 0x92, 0x23, 0xed, 0x29, 0xe6, 0xdc, 0xcd, 0x01, 0xa1, 0x45, - 0xbc, 0xb1, 0x0a, 0x4b, 0xfd, 0x46, 0x04, 0xb6, 0xe0, 0xbf, 0x3c, 0xda, 0x2d, 0x91, 0xe5, 0x84, - 0x6b, 0xe9, 0x35, 0xef, 0x44, 0xea, 0xe6, 0xae, 0xf5, 0x8d, 0xc3, 0x6d, 0x5f, 0x61, 0xb6, 0x7f, - 0x11, 0x5e, 0x48, 0xf1, 0x2f, 0x4c, 0x9f, 0xd1, 0x8e, 0x10, 0x0a, 0x09, 0x26, 0x87, 0x5f, 0xb1, - 0x3d, 0x99, 0x9c, 0xc0, 0xe3, 0xf6, 0x64, 0x72, 0x12, 0xc3, 0xda, 0x9b, 0xc9, 0x91, 0xee, 0x0e, - 0xfe, 0x5e, 0xe0, 0x74, 0x47, 0x84, 0x5c, 0x85, 0x6f, 0xa7, 0x57, 0x31, 0x89, 0xb3, 0xcd, 0x5d, - 0xee, 0x79, 0x3d, 0x37, 0xed, 0x2d, 0x66, 0xda, 0x32, 0x5c, 0xdc, 0xdb, 0x34, 0xca, 0x01, 0xdc, - 0x7f, 0x4d, 0xc2, 0x9f, 0x66, 0x78, 0xd7, 0xd4, 0x99, 0x2d, 0x85, 0xb7, 0xd3, 0xab, 0x98, 0x8a, - 0xa5, 0xcd, 0xad, 0x0f, 0x0e, 0xb0, 0xfb, 0x02, 0x6f, 0xfb, 0x88, 0x41, 0x4c, 0xdb, 0x0c, 0x53, - 0x76, 0xd9, 0x5f, 0xf8, 0x8f, 0x16, 0x76, 0x37, 0x4a, 0x35, 0x12, 0xd8, 0x45, 0x07, 0xd7, 0x86, - 0x42, 0xce, 0x95, 0xfa, 0x81, 0xe0, 0x56, 0x97, 0x98, 0xd5, 0x5f, 0x82, 0x17, 0xf7, 0xb6, 0xda, - 0x23, 0x8f, 0xe5, 0x78, 0x9b, 0xf3, 0x51, 0x86, 0xff, 0xef, 0x2e, 0x05, 0xc7, 0x0a, 0x37, 0xd2, - 0x2b, 0x9d, 0x9e, 0x26, 0xce, 0xdd, 0x1d, 0x30, 0x2a, 0xf7, 0x4e, 0x95, 0x79, 0x47, 0xd9, 0x5c, - 0x82, 0xc5, 0xbd, 0xfd, 0x13, 0x6d, 0x88, 0xcf, 0xa5, 0x59, 0xe0, 0xf7, 0xbf, 0xbf, 0x16, 0xc0, - 0x64, 0x88, 0xf2, 0x84, 0x6f, 0x76, 0x71, 0xb4, 0x61, 0xea, 0x34, 0xf7, 0x56, 0xf7, 0x0b, 0xb9, - 0xad, 0x8b, 0xcc, 0xd6, 0x05, 0x38, 0x9f, 0x22, 0x12, 0x5c, 0x25, 0xff, 0x9c, 0x89, 0x3d, 0x99, - 0x92, 0x79, 0xcd, 0x6e, 0x92, 0x3f, 0x15, 0x1f, 0xdb, 0x4d, 0xf2, 0xa7, 0xa3, 0x5c, 0xc5, 0x67, - 0xee, 0x63, 0xe8, 0x7b, 0xc2, 0x66, 0xaa, 0x02, 0x80, 0x1d, 0x20, 0x59, 0x37, 0xe5, 0x80, 0xf0, - 0x88, 0x1d, 0xff, 0x95, 0x5e, 0x41, 0xfc, 0x90, 0xf8, 0x4d, 0x26, 0xf6, 0x1b, 0x82, 0x4e, 0x74, - 0x06, 0xbc, 0xdb, 0xeb, 0x3b, 0xa7, 0x23, 0x23, 0x93, 0xbb, 0x37, 0x68, 0x58, 0xee, 0xef, 0x4d, - 0xe6, 0xee, 0x0d, 0x28, 0x75, 0xfd, 0xa8, 0x92, 0x2d, 0x64, 0x07, 0x1e, 0x2b, 0x3e, 0x8e, 0xf3, - 0x27, 0x4f, 0xe0, 0x0f, 0x87, 0xc1, 0x6b, 0x69, 0x58, 0x0f, 0xb8, 0xde, 0x47, 0x37, 0x94, 0x48, - 0xf7, 0xe4, 0xde, 0x1d, 0x20, 0x22, 0xf7, 0xd4, 0x47, 0x6e, 0x64, 0xfe, 0x4e, 0xd8, 0xbc, 0x0f, - 0xdf, 0xeb, 0xc6, 0x5b, 0x51, 0x4a, 0x38, 0x1a, 0x9e, 0x49, 0x6e, 0xfb, 0x6a, 0x5f, 0xe0, 0x5e, - 0xd8, 0x26, 0x21, 0xff, 0x36, 0xfe, 0xda, 0x09, 0xd5, 0x86, 0x72, 0x3f, 0xcc, 0xa3, 0xe7, 0xf6, - 0xd5, 0xfe, 0x40, 0x7a, 0xab, 0x01, 0xbe, 0x33, 0xfa, 0xa9, 0x01, 0xc9, 0x20, 0x7e, 0x0d, 0xf8, - 0xa7, 0xc0, 0xff, 0x57, 0x9f, 0xc4, 0x99, 0xc1, 0x2e, 0x58, 0xdb, 0x0e, 0xbc, 0x5c, 0x6e, 0xad, - 0x5f, 0x98, 0xee, 0x1b, 0xe4, 0x36, 0x14, 0x1f, 0xfc, 0xb7, 0x10, 0xfb, 0x01, 0x5a, 0x94, 0x84, - 0x83, 0xd7, 0xba, 0x3f, 0xe8, 0x44, 0x26, 0x30, 0xf7, 0x4e, 0xff, 0x40, 0xdd, 0x5b, 0x1d, 0x0a, - 0x8e, 0xe2, 0x63, 0x9f, 0x88, 0x7c, 0x52, 0xfa, 0xca, 0xc7, 0x2f, 0x66, 0x85, 0x4f, 0x5e, 0xcc, - 0x0a, 0x7f, 0x7d, 0x31, 0x2b, 0x3c, 0x7b, 0x39, 0x3b, 0xf4, 0xc9, 0xcb, 0xd9, 0xa1, 0x3f, 0xbe, - 0x9c, 0x1d, 0xda, 0xbc, 0x54, 0xd5, 0xe9, 0x76, 0x7d, 0xab, 0xa0, 0xe2, 0x1a, 0xff, 0x21, 0x63, - 0x68, 0x97, 0xf3, 0xfe, 0x2e, 0x8d, 0x37, 0x8a, 0x8f, 0x62, 0x6d, 0x7a, 0xd3, 0x42, 0x64, 0x6b, - 0x8c, 0xfd, 0x5c, 0xe2, 0xf5, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x38, 0x2b, 0x5b, 0xb8, 0x68, - 0x2a, 0x00, 0x00, + // 2429 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xcd, 0x6f, 0xdb, 0xc8, + 0x15, 0x37, 0xe5, 0x8f, 0xd8, 0xe3, 0xc4, 0xd9, 0x9d, 0x7c, 0x29, 0xb2, 0x63, 0x39, 0x4c, 0xd2, + 0x2a, 0x5f, 0xa2, 0xed, 0xc5, 0x76, 0x37, 0x69, 0xb3, 0x89, 0x25, 0xc7, 0x59, 0x35, 0xd9, 0xc4, + 0xcb, 0x38, 0x69, 0xe1, 0x85, 0xcb, 0xd0, 0xe4, 0x54, 0x66, 0x4d, 0x71, 0x68, 0x0e, 0xa5, 0x44, + 0x08, 0x02, 0xf4, 0xeb, 0x90, 0x2e, 0x8a, 0x36, 0x45, 0x51, 0xa0, 0xc7, 0xbd, 0x14, 0xe8, 0xa1, + 0xa7, 0x62, 0xd1, 0xa2, 0xb7, 0x3d, 0xee, 0xad, 0xdb, 0xdd, 0x4b, 0xd1, 0x02, 0x69, 0x91, 0xf4, + 0x50, 0x14, 0x28, 0x50, 0x6c, 0xfb, 0x07, 0x14, 0x1c, 0x0e, 0x47, 0x24, 0x45, 0x59, 0x94, 0xe4, + 0xc3, 0xde, 0xcc, 0x99, 0x37, 0xbf, 0x79, 0xef, 0xcd, 0x9b, 0x37, 0xef, 0xfd, 0x64, 0x20, 0x19, + 0x96, 0x8b, 0x1c, 0x6d, 0x4b, 0x35, 0x2c, 0x85, 0x20, 0xad, 0xee, 0x18, 0x6e, 0x53, 0xd2, 0xb4, + 0x86, 0x64, 0x3b, 0xb8, 0x61, 0xe8, 0xc8, 0x91, 0x1a, 0x0b, 0xd2, 0x4e, 0x1d, 0x39, 0xcd, 0xa2, + 0xed, 0x60, 0x17, 0xc3, 0x53, 0x09, 0x0b, 0x8a, 0x9a, 0xd6, 0x28, 0x06, 0x0b, 0x8a, 0x8d, 0x85, + 0xdc, 0x4c, 0x15, 0xe3, 0xaa, 0x89, 0x24, 0xd5, 0x36, 0x24, 0xd5, 0xb2, 0xb0, 0xab, 0xba, 0x06, + 0xb6, 0x88, 0x0f, 0x91, 0x3b, 0x5c, 0xc5, 0x55, 0x4c, 0xff, 0x94, 0xbc, 0xbf, 0xd8, 0x68, 0x9e, + 0xad, 0xa1, 0x5f, 0x9b, 0xf5, 0x6f, 0x4b, 0xae, 0x51, 0x43, 0xc4, 0x55, 0x6b, 0x36, 0x13, 0x58, + 0x4c, 0xa3, 0x2a, 0xd7, 0xc2, 0x5f, 0x33, 0xdf, 0x69, 0x4d, 0x63, 0x41, 0x22, 0x5b, 0xaa, 0x83, + 0x74, 0x45, 0xc3, 0x16, 0xa9, 0xd7, 0xf8, 0x8a, 0x33, 0xbb, 0xac, 0x78, 0x68, 0x38, 0x88, 0x89, + 0xcd, 0xb8, 0xc8, 0xd2, 0x91, 0x53, 0x33, 0x2c, 0x57, 0xd2, 0x9c, 0xa6, 0xed, 0x62, 0x69, 0x1b, + 0x35, 0x03, 0x0b, 0x8f, 0x6b, 0x98, 0xd4, 0x30, 0x51, 0x7c, 0x23, 0xfd, 0x0f, 0x36, 0x75, 0xda, + 0xff, 0x92, 0x88, 0xab, 0x6e, 0x1b, 0x56, 0x55, 0x6a, 0x2c, 0x6c, 0x22, 0x57, 0x5d, 0x08, 0xbe, + 0x7d, 0x29, 0x71, 0x03, 0x4c, 0xbf, 0xeb, 0x39, 0xbd, 0xcc, 0x94, 0xbb, 0x81, 0x2c, 0x44, 0x0c, + 0x22, 0xa3, 0x9d, 0x3a, 0x22, 0x2e, 0x3c, 0x01, 0xc6, 0x7d, 0x0d, 0x0d, 0x3d, 0x2b, 0xcc, 0x09, + 0x85, 0x89, 0x52, 0x26, 0x2b, 0xc8, 0xfb, 0xe8, 0x58, 0x45, 0x87, 0x79, 0x30, 0x19, 0x58, 0xe5, + 0x49, 0x64, 0x3c, 0x09, 0x19, 0x04, 0x43, 0x15, 0x5d, 0x7c, 0x0c, 0x66, 0x92, 0xe1, 0x89, 0x8d, + 0x2d, 0x82, 0xe0, 0x7b, 0xe0, 0x40, 0xd5, 0x1f, 0x52, 0x88, 0xab, 0xba, 0x88, 0x6e, 0x32, 0xb9, + 0x38, 0x5f, 0xec, 0x74, 0xf8, 0x8d, 0x85, 0x62, 0x0c, 0xeb, 0xae, 0xb7, 0xae, 0x34, 0xf2, 0xf1, + 0xf3, 0xfc, 0x90, 0xbc, 0xbf, 0x1a, 0x1a, 0x13, 0x67, 0x40, 0x2e, 0xb2, 0x79, 0xd9, 0x83, 0x0b, + 0x4c, 0x13, 0xd5, 0x98, 0xe5, 0xc1, 0x2c, 0xd3, 0xac, 0x04, 0xc6, 0xe8, 0xf6, 0x24, 0x2b, 0xcc, + 0x0d, 0x17, 0x26, 0x17, 0xcf, 0x15, 0x53, 0xc4, 0x63, 0x91, 0x82, 0xc8, 0x6c, 0xa5, 0x78, 0x16, + 0x7c, 0xb9, 0x7d, 0x8b, 0xbb, 0xae, 0xea, 0xb8, 0xab, 0x0e, 0xb6, 0x31, 0x51, 0x4d, 0xae, 0xcd, + 0x8f, 0x05, 0x50, 0xe8, 0x2e, 0xcb, 0x74, 0x7b, 0x00, 0x26, 0xec, 0x60, 0x90, 0x79, 0xec, 0xad, + 0x74, 0xea, 0x31, 0xf0, 0x25, 0x5d, 0x37, 0xbc, 0x8b, 0xc2, 0xa1, 0xe9, 0xb1, 0xb6, 0x40, 0xc5, + 0x02, 0xf8, 0x52, 0x92, 0x36, 0xd8, 0x6e, 0x53, 0xfc, 0x7d, 0x21, 0xd9, 0xc8, 0x88, 0x28, 0xd3, + 0x5b, 0x69, 0xd7, 0xfb, 0x4a, 0x4f, 0x7a, 0xcb, 0xa8, 0x86, 0x1b, 0xaa, 0xd9, 0x51, 0xed, 0x5f, + 0x66, 0xc0, 0x28, 0xdd, 0x1f, 0x1e, 0x8f, 0x07, 0x6e, 0x2b, 0x68, 0xa7, 0xc1, 0x84, 0x66, 0x1a, + 0xc8, 0x72, 0x5b, 0x21, 0x3b, 0xee, 0x0f, 0x54, 0x74, 0x78, 0x08, 0x8c, 0xba, 0xd8, 0x56, 0x6e, + 0x67, 0x87, 0xe7, 0x84, 0xc2, 0x01, 0x79, 0xc4, 0xc5, 0xf6, 0x6d, 0x78, 0x0e, 0xc0, 0x9a, 0x61, + 0x29, 0x36, 0x7e, 0xe8, 0xc5, 0xb9, 0xa5, 0xf8, 0x12, 0x23, 0x73, 0x42, 0x61, 0x58, 0x9e, 0xaa, + 0x19, 0xd6, 0xaa, 0x37, 0x51, 0xb1, 0xd6, 0x3c, 0xd9, 0x79, 0x70, 0xb8, 0xa1, 0x9a, 0x86, 0xae, + 0xba, 0xd8, 0x21, 0x6c, 0x89, 0xa6, 0xda, 0xd9, 0x51, 0x8a, 0x07, 0x5b, 0x73, 0x74, 0x51, 0x59, + 0xb5, 0xe1, 0x39, 0xf0, 0x2a, 0x1f, 0x55, 0x08, 0x72, 0xa9, 0xf8, 0x18, 0x15, 0x3f, 0xc8, 0x27, + 0xee, 0x22, 0xd7, 0x93, 0x9d, 0x01, 0x13, 0xaa, 0x69, 0xe2, 0x87, 0xa6, 0x41, 0xdc, 0xec, 0xbe, + 0xb9, 0xe1, 0xc2, 0x84, 0xdc, 0x1a, 0x80, 0x39, 0x30, 0xae, 0x23, 0xab, 0x49, 0x27, 0xc7, 0xe9, + 0x24, 0xff, 0x16, 0x7f, 0x23, 0x80, 0x93, 0xf4, 0x9c, 0xee, 0x07, 0x90, 0xa1, 0x60, 0x70, 0x52, + 0xde, 0xf7, 0x2b, 0xe0, 0x95, 0xe0, 0x58, 0x14, 0x55, 0xd7, 0x1d, 0x44, 0x88, 0xef, 0xc1, 0x12, + 0xfc, 0xfc, 0x79, 0x7e, 0xaa, 0xa9, 0xd6, 0xcc, 0xcb, 0x22, 0x9b, 0x10, 0xe5, 0x83, 0x81, 0xec, + 0x92, 0x3f, 0x12, 0x4f, 0x17, 0xc3, 0xf1, 0x74, 0x71, 0x79, 0xfc, 0xe9, 0x07, 0xf9, 0xa1, 0x7f, + 0x7e, 0x90, 0x1f, 0x12, 0xef, 0x00, 0x71, 0x37, 0x6d, 0x59, 0x40, 0x9d, 0x05, 0xaf, 0x70, 0xc0, + 0x40, 0x1f, 0xff, 0xb4, 0x0f, 0x6a, 0x21, 0x79, 0x4f, 0x9b, 0x76, 0xfb, 0x57, 0x43, 0xda, 0xa5, + 0xb7, 0xbf, 0x6d, 0xbf, 0x5d, 0xec, 0x8f, 0xe9, 0x30, 0x90, 0xfd, 0x51, 0x6d, 0x5b, 0xf6, 0xb7, + 0x9d, 0x07, 0xb3, 0x3f, 0xe6, 0x7b, 0x71, 0x1a, 0x1c, 0xa7, 0x80, 0x6b, 0x5b, 0x0e, 0x76, 0x5d, + 0x13, 0xd1, 0x14, 0x19, 0x5c, 0xe2, 0x3f, 0x09, 0x2c, 0x55, 0xc6, 0x66, 0xd9, 0x36, 0x79, 0x30, + 0x49, 0x4c, 0x95, 0x6c, 0x29, 0x35, 0xe4, 0x22, 0x87, 0xee, 0x30, 0x2c, 0x03, 0x3a, 0xf4, 0x8e, + 0x37, 0x02, 0x17, 0xc1, 0x91, 0x90, 0x80, 0x42, 0x23, 0x52, 0xb5, 0x34, 0x44, 0x9d, 0x33, 0x2c, + 0x1f, 0x6a, 0x89, 0x2e, 0x05, 0x53, 0xf0, 0x5b, 0x20, 0x6b, 0xa1, 0x47, 0xae, 0xe2, 0x20, 0xdb, + 0x44, 0x96, 0x41, 0xb6, 0x14, 0x4d, 0xb5, 0x74, 0xcf, 0x58, 0x44, 0x3d, 0x33, 0xb9, 0x98, 0x2b, + 0xfa, 0x2f, 0x75, 0x31, 0x78, 0xa9, 0x8b, 0x6b, 0xc1, 0x4b, 0x5d, 0x1a, 0xf7, 0xf2, 0xfd, 0xb3, + 0xbf, 0xe5, 0x05, 0xf9, 0xa8, 0x87, 0x22, 0x07, 0x20, 0xe5, 0x00, 0x43, 0xbc, 0x00, 0xce, 0x51, + 0x93, 0x64, 0x54, 0x35, 0x88, 0x8b, 0x1c, 0xa4, 0xb7, 0xb2, 0xc8, 0x43, 0xd5, 0xd1, 0x97, 0x91, + 0x85, 0x6b, 0x3c, 0x8d, 0x5d, 0x07, 0xe7, 0x53, 0x49, 0x33, 0x8f, 0x1c, 0x05, 0x63, 0x3a, 0x1d, + 0xa1, 0xaf, 0xc3, 0x84, 0xcc, 0xbe, 0xc4, 0x59, 0xf6, 0xde, 0xf9, 0x19, 0x0a, 0xe9, 0x34, 0x19, + 0x55, 0x96, 0xf9, 0x36, 0xdf, 0x13, 0xc0, 0x89, 0x0e, 0x02, 0x3c, 0xb7, 0x4f, 0xd9, 0xe1, 0xb9, + 0xe0, 0xfd, 0x59, 0x4c, 0x95, 0x28, 0x23, 0xb0, 0xec, 0x51, 0x8c, 0xe1, 0x89, 0x16, 0x38, 0x10, + 0x11, 0x83, 0x33, 0x80, 0x05, 0xf8, 0x72, 0x7b, 0xcc, 0x2f, 0xc3, 0x59, 0x00, 0x82, 0x04, 0x5b, + 0x59, 0xa6, 0x07, 0x3a, 0x22, 0x87, 0x46, 0xba, 0x06, 0xb5, 0xb8, 0x03, 0x24, 0x6a, 0xf2, 0x92, + 0x69, 0xae, 0xaa, 0x86, 0x43, 0xee, 0xab, 0x66, 0x19, 0x5b, 0x5e, 0x5c, 0x96, 0xa2, 0x8f, 0x46, + 0x65, 0x79, 0xaf, 0xca, 0x8e, 0x5f, 0x09, 0x60, 0x3e, 0xfd, 0x9e, 0xcc, 0xf3, 0x3b, 0xe0, 0x55, + 0x5b, 0x35, 0x1c, 0xa5, 0xa1, 0x9a, 0x5e, 0xad, 0x46, 0x2f, 0x14, 0x73, 0xfe, 0x4a, 0x3a, 0xe7, + 0xab, 0x86, 0xd3, 0xda, 0x88, 0x5f, 0x58, 0xab, 0x15, 0x4a, 0x53, 0x76, 0x44, 0x44, 0xfc, 0x9f, + 0x00, 0x4e, 0x76, 0x5d, 0x05, 0x57, 0x3a, 0xdd, 0xf2, 0xd2, 0xf4, 0xe7, 0xcf, 0xf3, 0xc7, 0xfc, + 0xac, 0x13, 0x97, 0x48, 0x48, 0xbf, 0x2b, 0x1d, 0xb3, 0x57, 0x08, 0x27, 0x2e, 0x91, 0x90, 0xc6, + 0xae, 0x82, 0xfd, 0x5c, 0x6a, 0x1b, 0x35, 0xd9, 0x6d, 0x9d, 0x29, 0xb6, 0x2a, 0xd5, 0xa2, 0x5f, + 0xa9, 0x16, 0x57, 0xeb, 0x9b, 0xa6, 0xa1, 0xdd, 0x44, 0x4d, 0x99, 0x1f, 0xd8, 0x4d, 0xd4, 0x14, + 0x0f, 0x03, 0xe8, 0x5f, 0x02, 0xd5, 0x51, 0x5b, 0x57, 0xf0, 0x01, 0x38, 0x14, 0x19, 0x65, 0xc7, + 0x52, 0x01, 0x63, 0x36, 0x1d, 0x61, 0x15, 0xc3, 0xf9, 0x94, 0x67, 0xe1, 0x2d, 0x61, 0x37, 0x80, + 0x01, 0x88, 0x26, 0x4b, 0x09, 0x91, 0x08, 0xb8, 0x63, 0xbb, 0x48, 0xaf, 0x58, 0x3c, 0xd1, 0xee, + 0x59, 0xed, 0xbb, 0xc3, 0x52, 0x4a, 0xb7, 0xdd, 0x78, 0xc1, 0x79, 0x22, 0x5c, 0x38, 0xc4, 0x8e, + 0x13, 0x05, 0x99, 0x66, 0x3a, 0x54, 0x41, 0x44, 0xcf, 0x17, 0x11, 0xf1, 0x01, 0x98, 0x8d, 0x6c, + 0xb9, 0xf7, 0x46, 0xfd, 0x6c, 0x1f, 0x98, 0xeb, 0xb0, 0x05, 0xff, 0x2b, 0xb1, 0x4c, 0x10, 0xd2, + 0x97, 0x09, 0xf1, 0xf8, 0xca, 0xf4, 0x18, 0x5f, 0x30, 0x0b, 0x46, 0x69, 0xe1, 0x45, 0x23, 0x73, + 0x98, 0x5a, 0xe8, 0x0f, 0xc0, 0x4b, 0x60, 0xc4, 0xf1, 0x1e, 0x98, 0x11, 0xaa, 0xcd, 0x19, 0x2f, + 0x3a, 0xfe, 0xf2, 0x3c, 0x3f, 0xed, 0xb7, 0x4a, 0x44, 0xdf, 0x2e, 0x1a, 0x58, 0xaa, 0xa9, 0xee, + 0x56, 0xf1, 0x16, 0xaa, 0xaa, 0x5a, 0x73, 0x19, 0x69, 0x59, 0x41, 0xa6, 0x4b, 0xe0, 0x19, 0x30, + 0xc5, 0xb5, 0xf2, 0xd1, 0x47, 0xe9, 0xe3, 0x76, 0x20, 0x18, 0xa5, 0x05, 0x1d, 0xdc, 0x00, 0x59, + 0x2e, 0xa6, 0xe1, 0x5a, 0xcd, 0x20, 0xc4, 0xc0, 0x96, 0x42, 0x77, 0x1d, 0xa3, 0xbb, 0x9e, 0x4a, + 0xb1, 0xab, 0x7c, 0x34, 0x00, 0x29, 0x73, 0x0c, 0xd9, 0xd3, 0x62, 0x03, 0x64, 0xb9, 0x6b, 0xe3, + 0xf0, 0xfb, 0x7a, 0x80, 0x0f, 0x40, 0x62, 0xf0, 0x37, 0xc1, 0xa4, 0x8e, 0x88, 0xe6, 0x18, 0xb6, + 0xd7, 0x1e, 0x64, 0xc7, 0xa9, 0xe7, 0x4f, 0x15, 0x59, 0x63, 0x19, 0xb4, 0x8e, 0xac, 0x95, 0x2c, + 0x2e, 0xb7, 0x44, 0xd9, 0x4d, 0x0b, 0xaf, 0x86, 0x1b, 0xe0, 0x38, 0xd7, 0x15, 0xdb, 0xc8, 0xa1, + 0x05, 0x6e, 0x10, 0x0f, 0x13, 0x54, 0xd9, 0x93, 0x9f, 0x7e, 0x78, 0xf1, 0x04, 0x43, 0xe7, 0xf1, + 0xc3, 0xe2, 0xe0, 0xae, 0xeb, 0x18, 0x56, 0x55, 0x3e, 0x16, 0x60, 0xdc, 0x61, 0x10, 0x41, 0x98, + 0x1c, 0x05, 0x63, 0xdf, 0x51, 0x0d, 0x13, 0xe9, 0x59, 0x30, 0x27, 0x14, 0xc6, 0x65, 0xf6, 0x05, + 0x2f, 0x83, 0x31, 0xaf, 0x97, 0xac, 0x93, 0xec, 0xe4, 0x9c, 0x50, 0x98, 0x5a, 0x14, 0x3b, 0xa9, + 0x5f, 0xc2, 0x96, 0x7e, 0x97, 0x4a, 0xca, 0x6c, 0x05, 0x5c, 0x03, 0x3c, 0x1a, 0x15, 0x17, 0x6f, + 0x23, 0x8b, 0x64, 0xf7, 0x53, 0x45, 0xcf, 0x33, 0xaf, 0x1e, 0x69, 0xf7, 0x6a, 0xc5, 0x72, 0x3f, + 0xfd, 0xf0, 0x22, 0x60, 0x9b, 0x54, 0x2c, 0x97, 0xbe, 0xb8, 0x14, 0x63, 0x8d, 0x42, 0x78, 0xa1, + 0xc3, 0x51, 0xfd, 0xd0, 0x39, 0xe0, 0x87, 0x4e, 0x30, 0xea, 0x87, 0xce, 0x57, 0xc0, 0x31, 0x76, + 0xb9, 0x11, 0x51, 0xb4, 0xba, 0xe3, 0x78, 0x3d, 0x0a, 0xb2, 0xb1, 0xb6, 0x95, 0x9d, 0xa2, 0x16, + 0x1e, 0xe1, 0xd3, 0x65, 0x7f, 0xf6, 0xba, 0x37, 0x29, 0x3e, 0x15, 0x40, 0xbe, 0xe3, 0xb5, 0x67, + 0xd9, 0x05, 0x01, 0xd0, 0x4a, 0x1c, 0xec, 0x55, 0xbb, 0x9e, 0x2a, 0x93, 0x76, 0xbb, 0xed, 0x72, + 0x08, 0x58, 0xdc, 0x61, 0xef, 0x6e, 0xb4, 0xa9, 0xe6, 0xb2, 0x6f, 0xab, 0x64, 0x0d, 0xb3, 0xaf, + 0xa0, 0xf8, 0x1c, 0x30, 0x5b, 0x88, 0x2a, 0x58, 0xe8, 0x61, 0x4b, 0xe6, 0x8e, 0x0b, 0x00, 0xb6, + 0x6e, 0x29, 0xcb, 0x87, 0x41, 0x86, 0xe5, 0x8f, 0xa4, 0x5f, 0x20, 0xe8, 0xb4, 0x77, 0x38, 0x9f, + 0xdc, 0x8d, 0x44, 0xaf, 0xcf, 0x17, 0xa3, 0x8b, 0x12, 0xab, 0xe0, 0x42, 0x3a, 0x6d, 0x99, 0x33, + 0xde, 0x60, 0x49, 0x51, 0x48, 0x9f, 0x3f, 0xe8, 0x02, 0x51, 0x64, 0x6f, 0x41, 0xc9, 0xc4, 0xda, + 0x36, 0xb9, 0x67, 0xb9, 0x86, 0x79, 0x1b, 0x3d, 0xf2, 0xa3, 0x32, 0x78, 0xd5, 0xd7, 0x59, 0xdb, + 0x95, 0x2c, 0xc3, 0x34, 0x78, 0x1d, 0x1c, 0xdb, 0xa4, 0xf3, 0x4a, 0xdd, 0x13, 0x50, 0x68, 0x63, + 0xe0, 0x47, 0xbe, 0x40, 0x0b, 0xce, 0xc3, 0x9b, 0x09, 0xcb, 0xc5, 0x25, 0xd6, 0x24, 0x95, 0xb9, + 0xed, 0x2b, 0x0e, 0xae, 0x95, 0x59, 0x2f, 0x1f, 0x9c, 0x46, 0xa4, 0xdf, 0x17, 0xa2, 0xfd, 0xbe, + 0xb8, 0x02, 0x4e, 0xed, 0x0a, 0xd1, 0xea, 0x80, 0xc2, 0x3e, 0x17, 0xe2, 0x3e, 0x5f, 0xfc, 0xe9, + 0x69, 0x30, 0x4a, 0x81, 0xe0, 0xaf, 0x33, 0xe0, 0x70, 0x12, 0xe7, 0x05, 0xaf, 0xf5, 0x7e, 0xdd, + 0xa2, 0x6c, 0x5c, 0x6e, 0x69, 0x00, 0x04, 0xdf, 0x10, 0xf1, 0x7d, 0xe1, 0xfb, 0x9f, 0xfd, 0xe3, + 0xe7, 0x99, 0x1f, 0x08, 0xeb, 0x25, 0x78, 0xad, 0x3b, 0x27, 0xcb, 0x8d, 0x66, 0xc4, 0x9a, 0xf4, + 0x38, 0xe4, 0x86, 0x27, 0xf0, 0x4a, 0x5f, 0x08, 0xec, 0x6a, 0x3c, 0x81, 0x9f, 0x09, 0xac, 0xe4, + 0x8b, 0xde, 0x5d, 0x78, 0xb5, 0x77, 0x3b, 0x23, 0xdc, 0x5e, 0xee, 0x5a, 0xff, 0x00, 0xcc, 0x4f, + 0x97, 0xa8, 0x9b, 0x5e, 0x83, 0x0b, 0x3d, 0x58, 0xe8, 0xb3, 0x7e, 0xf0, 0x87, 0x19, 0x90, 0xed, + 0x40, 0xe5, 0x11, 0x78, 0xab, 0x4f, 0xcd, 0x12, 0x59, 0xc3, 0xdc, 0x3b, 0x7b, 0x84, 0xc6, 0x8c, + 0xbe, 0x49, 0x8d, 0xee, 0x2d, 0x30, 0x98, 0x90, 0x07, 0xa8, 0x70, 0x22, 0xee, 0x69, 0x46, 0x80, + 0xdf, 0xcd, 0x80, 0x63, 0xc9, 0xc4, 0x20, 0x81, 0x37, 0xfb, 0xd6, 0xbb, 0x9d, 0x81, 0xcc, 0xdd, + 0xda, 0x1b, 0x30, 0xe6, 0x83, 0xaf, 0x53, 0x1f, 0x2c, 0xc1, 0xab, 0x7d, 0xf8, 0x00, 0xdb, 0x51, + 0x17, 0xfc, 0x27, 0xa0, 0x55, 0x12, 0x59, 0x2c, 0xb8, 0x92, 0x5e, 0xf1, 0xdd, 0x48, 0xbb, 0xdc, + 0x8d, 0x81, 0x71, 0x98, 0xed, 0x4b, 0xd4, 0xf6, 0xaf, 0xc2, 0x4b, 0x29, 0x7e, 0xac, 0xe1, 0x8c, + 0x65, 0xa4, 0x61, 0x4c, 0x30, 0x39, 0xdc, 0xa5, 0xf4, 0x65, 0x72, 0x02, 0x4f, 0xd7, 0x97, 0xc9, + 0x49, 0x0c, 0x5a, 0x7f, 0x26, 0x47, 0x5e, 0x6f, 0xf8, 0x47, 0x81, 0xb5, 0xb3, 0x11, 0xf2, 0x0c, + 0xbe, 0x95, 0x5e, 0xc5, 0x24, 0x4e, 0x2e, 0x77, 0xb5, 0xef, 0xf5, 0xcc, 0xb4, 0x37, 0xa9, 0x69, + 0x8b, 0x70, 0xbe, 0xbb, 0x69, 0x2e, 0x03, 0xf0, 0x7f, 0x84, 0x81, 0xbf, 0xc8, 0xb0, 0x57, 0x71, + 0x77, 0x36, 0x0c, 0xde, 0x49, 0xaf, 0x62, 0x2a, 0x16, 0x2e, 0xb7, 0xba, 0x77, 0x80, 0x91, 0x94, + 0x76, 0x1d, 0x96, 0xbb, 0x3b, 0xc1, 0xe1, 0x88, 0xad, 0x98, 0x76, 0x28, 0xa6, 0xe2, 0xb3, 0x7b, + 0xf0, 0x5f, 0x6d, 0xec, 0x5d, 0x94, 0x4a, 0x22, 0xb0, 0x87, 0x17, 0xba, 0x03, 0x45, 0x98, 0x2b, + 0x0d, 0x02, 0xc1, 0xac, 0x2e, 0x51, 0xab, 0xbf, 0x06, 0x2f, 0x77, 0xb7, 0x3a, 0x20, 0x07, 0x95, + 0xf8, 0x33, 0xf6, 0x51, 0x86, 0xfd, 0x22, 0x95, 0x82, 0x43, 0x83, 0x6b, 0xe9, 0x95, 0x4e, 0x4f, + 0x03, 0xe6, 0xee, 0xed, 0x31, 0x2a, 0xf3, 0x4e, 0x95, 0x7a, 0x47, 0x5d, 0x5f, 0x80, 0x52, 0x77, + 0xff, 0x44, 0x0b, 0x9e, 0x0b, 0x69, 0x16, 0xf0, 0xfa, 0xe6, 0xb7, 0x02, 0x98, 0x0c, 0x51, 0x5a, + 0xf0, 0x8d, 0x1e, 0x8e, 0x36, 0x4c, 0x8d, 0xe5, 0xde, 0xec, 0x7d, 0x21, 0xb3, 0x75, 0x9e, 0xda, + 0x7a, 0x0e, 0x16, 0x52, 0x44, 0x82, 0xaf, 0xe4, 0x5f, 0x33, 0xb1, 0x92, 0x38, 0x99, 0xb7, 0xea, + 0xe5, 0xf2, 0xa7, 0xe2, 0xdb, 0x7a, 0xb9, 0xfc, 0xe9, 0x28, 0x35, 0xf1, 0x99, 0x5f, 0xec, 0xfe, + 0x48, 0x58, 0x4f, 0x95, 0x00, 0xb0, 0x07, 0xa4, 0x18, 0x96, 0xd2, 0x6a, 0x68, 0x63, 0xc7, 0x7f, + 0xad, 0x5f, 0x10, 0x1e, 0x12, 0xbf, 0xcb, 0x80, 0xb3, 0xa9, 0xdb, 0x55, 0x78, 0xaf, 0xdf, 0x3a, + 0x76, 0xd7, 0x8e, 0x3b, 0x77, 0x7f, 0xaf, 0x61, 0x99, 0xbf, 0xd7, 0xa9, 0xbb, 0xd7, 0xa0, 0xdc, + 0x73, 0xd1, 0xac, 0xd8, 0xc8, 0x69, 0x79, 0x4c, 0x7a, 0x1c, 0xef, 0x8f, 0x9f, 0xc0, 0x9f, 0x0c, + 0x83, 0xd3, 0x69, 0xba, 0x5a, 0xb8, 0x3a, 0x40, 0x35, 0x94, 0xd8, 0xce, 0xe7, 0xde, 0xdd, 0x43, + 0x44, 0xe6, 0xa9, 0x8f, 0xfc, 0xc8, 0xfc, 0x83, 0xb0, 0xbe, 0x01, 0xdf, 0xeb, 0xc5, 0x5b, 0x51, + 0xca, 0x2f, 0x1a, 0x9e, 0x49, 0x6e, 0xfb, 0xe6, 0x40, 0xe0, 0x41, 0xd8, 0x26, 0x21, 0xff, 0x3e, + 0x5e, 0xdf, 0x87, 0x72, 0x43, 0x79, 0x10, 0x66, 0x29, 0x70, 0xfb, 0xf2, 0x60, 0x20, 0xfd, 0xe5, + 0x00, 0xee, 0x8c, 0x41, 0x72, 0x40, 0x32, 0x08, 0xcf, 0x01, 0xff, 0x16, 0xd8, 0x6f, 0xb1, 0x49, + 0x9c, 0x08, 0xec, 0x81, 0x95, 0xdb, 0x85, 0x77, 0xc9, 0xad, 0x0c, 0x0a, 0xd3, 0x7b, 0x81, 0xdc, + 0x81, 0xc2, 0x81, 0xff, 0x15, 0x62, 0xff, 0x6a, 0x13, 0x25, 0x59, 0xe0, 0x8d, 0xde, 0x0f, 0x3a, + 0x91, 0xe9, 0xc9, 0xbd, 0x3d, 0x38, 0x50, 0xef, 0x56, 0x87, 0x82, 0x43, 0x7a, 0xcc, 0x89, 0xa6, + 0x27, 0xa5, 0x6f, 0x7c, 0xfc, 0x62, 0x56, 0xf8, 0xe4, 0xc5, 0xac, 0xf0, 0xf7, 0x17, 0xb3, 0xc2, + 0xb3, 0x97, 0xb3, 0x43, 0x9f, 0xbc, 0x9c, 0x1d, 0xfa, 0xf3, 0xcb, 0xd9, 0xa1, 0xf5, 0x2b, 0x55, + 0xc3, 0xdd, 0xaa, 0x6f, 0x16, 0x35, 0x5c, 0x63, 0xff, 0xb2, 0x15, 0xda, 0xe5, 0x22, 0xdf, 0xa5, + 0xf1, 0xba, 0xf4, 0x28, 0x56, 0xa6, 0x37, 0x6d, 0x44, 0x36, 0xc7, 0xe8, 0xcf, 0xe1, 0xaf, 0xfd, + 0x3f, 0x00, 0x00, 0xff, 0xff, 0x10, 0x95, 0x03, 0x85, 0x52, 0x27, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2372,14 +2186,8 @@ type QueryClient interface { // ConsumerChains queries active consumer chains supported by the provider // chain QueryConsumerChains(ctx context.Context, in *QueryConsumerChainsRequest, opts ...grpc.CallOption) (*QueryConsumerChainsResponse, error) - // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStart` instead - // QueryConsumerChainStarts queries consumer chain start proposals. QueryConsumerChainStarts(ctx context.Context, in *QueryConsumerChainStartProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStartProposalsResponse, error) - QueryConsumersThatAreAboutToStart(ctx context.Context, in *QueryConsumersThatAreAboutToStartRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStartResponse, error) - // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStop` instead - // QueryConsumerChainStops queries consumer chain stop proposals. QueryConsumerChainStops(ctx context.Context, in *QueryConsumerChainStopProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStopProposalsResponse, error) - QueryConsumersThatAreAboutToStop(ctx context.Context, in *QueryConsumersThatAreAboutToStopRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStopResponse, error) // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. QueryValidatorConsumerAddr(ctx context.Context, in *QueryValidatorConsumerAddrRequest, opts ...grpc.CallOption) (*QueryValidatorConsumerAddrResponse, error) @@ -2457,15 +2265,6 @@ func (c *queryClient) QueryConsumerChainStarts(ctx context.Context, in *QueryCon return out, nil } -func (c *queryClient) QueryConsumersThatAreAboutToStart(ctx context.Context, in *QueryConsumersThatAreAboutToStartRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStartResponse, error) { - out := new(QueryConsumersThatAreAboutToStartResponse) - err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStart", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - // Deprecated: Do not use. func (c *queryClient) QueryConsumerChainStops(ctx context.Context, in *QueryConsumerChainStopProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStopProposalsResponse, error) { out := new(QueryConsumerChainStopProposalsResponse) @@ -2476,15 +2275,6 @@ func (c *queryClient) QueryConsumerChainStops(ctx context.Context, in *QueryCons return out, nil } -func (c *queryClient) QueryConsumersThatAreAboutToStop(ctx context.Context, in *QueryConsumersThatAreAboutToStopRequest, opts ...grpc.CallOption) (*QueryConsumersThatAreAboutToStopResponse, error) { - out := new(QueryConsumersThatAreAboutToStopResponse) - err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStop", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *queryClient) QueryValidatorConsumerAddr(ctx context.Context, in *QueryValidatorConsumerAddrRequest, opts ...grpc.CallOption) (*QueryValidatorConsumerAddrResponse, error) { out := new(QueryValidatorConsumerAddrResponse) err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryValidatorConsumerAddr", in, out, opts...) @@ -2610,14 +2400,8 @@ type QueryServer interface { // ConsumerChains queries active consumer chains supported by the provider // chain QueryConsumerChains(context.Context, *QueryConsumerChainsRequest) (*QueryConsumerChainsResponse, error) - // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStart` instead - // QueryConsumerChainStarts queries consumer chain start proposals. QueryConsumerChainStarts(context.Context, *QueryConsumerChainStartProposalsRequest) (*QueryConsumerChainStartProposalsResponse, error) - QueryConsumersThatAreAboutToStart(context.Context, *QueryConsumersThatAreAboutToStartRequest) (*QueryConsumersThatAreAboutToStartResponse, error) - // [DEPRECATED]: Use `QueryConsumersThatAreAboutToStop` instead - // QueryConsumerChainStops queries consumer chain stop proposals. QueryConsumerChainStops(context.Context, *QueryConsumerChainStopProposalsRequest) (*QueryConsumerChainStopProposalsResponse, error) - QueryConsumersThatAreAboutToStop(context.Context, *QueryConsumersThatAreAboutToStopRequest) (*QueryConsumersThatAreAboutToStopResponse, error) // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. QueryValidatorConsumerAddr(context.Context, *QueryValidatorConsumerAddrRequest) (*QueryValidatorConsumerAddrResponse, error) @@ -2672,15 +2456,9 @@ func (*UnimplementedQueryServer) QueryConsumerChains(ctx context.Context, req *Q func (*UnimplementedQueryServer) QueryConsumerChainStarts(ctx context.Context, req *QueryConsumerChainStartProposalsRequest) (*QueryConsumerChainStartProposalsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryConsumerChainStarts not implemented") } -func (*UnimplementedQueryServer) QueryConsumersThatAreAboutToStart(ctx context.Context, req *QueryConsumersThatAreAboutToStartRequest) (*QueryConsumersThatAreAboutToStartResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryConsumersThatAreAboutToStart not implemented") -} func (*UnimplementedQueryServer) QueryConsumerChainStops(ctx context.Context, req *QueryConsumerChainStopProposalsRequest) (*QueryConsumerChainStopProposalsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryConsumerChainStops not implemented") } -func (*UnimplementedQueryServer) QueryConsumersThatAreAboutToStop(ctx context.Context, req *QueryConsumersThatAreAboutToStopRequest) (*QueryConsumersThatAreAboutToStopResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryConsumersThatAreAboutToStop not implemented") -} func (*UnimplementedQueryServer) QueryValidatorConsumerAddr(ctx context.Context, req *QueryValidatorConsumerAddrRequest) (*QueryValidatorConsumerAddrResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryValidatorConsumerAddr not implemented") } @@ -2779,24 +2557,6 @@ func _Query_QueryConsumerChainStarts_Handler(srv interface{}, ctx context.Contex return interceptor(ctx, in, info, handler) } -func _Query_QueryConsumersThatAreAboutToStart_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryConsumersThatAreAboutToStartRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).QueryConsumersThatAreAboutToStart(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStart", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).QueryConsumersThatAreAboutToStart(ctx, req.(*QueryConsumersThatAreAboutToStartRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _Query_QueryConsumerChainStops_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryConsumerChainStopProposalsRequest) if err := dec(in); err != nil { @@ -2815,24 +2575,6 @@ func _Query_QueryConsumerChainStops_Handler(srv interface{}, ctx context.Context return interceptor(ctx, in, info, handler) } -func _Query_QueryConsumersThatAreAboutToStop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryConsumersThatAreAboutToStopRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).QueryConsumersThatAreAboutToStop(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/interchain_security.ccv.provider.v1.Query/QueryConsumersThatAreAboutToStop", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).QueryConsumersThatAreAboutToStop(ctx, req.(*QueryConsumersThatAreAboutToStopRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _Query_QueryValidatorConsumerAddr_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryValidatorConsumerAddrRequest) if err := dec(in); err != nil { @@ -3083,18 +2825,10 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "QueryConsumerChainStarts", Handler: _Query_QueryConsumerChainStarts_Handler, }, - { - MethodName: "QueryConsumersThatAreAboutToStart", - Handler: _Query_QueryConsumersThatAreAboutToStart_Handler, - }, { MethodName: "QueryConsumerChainStops", Handler: _Query_QueryConsumerChainStops_Handler, }, - { - MethodName: "QueryConsumersThatAreAboutToStop", - Handler: _Query_QueryConsumersThatAreAboutToStop_Handler, - }, { MethodName: "QueryValidatorConsumerAddr", Handler: _Query_QueryValidatorConsumerAddr_Handler, @@ -3340,61 +3074,6 @@ func (m *QueryConsumerChainStartProposalsResponse) MarshalToSizedBuffer(dAtA []b return len(dAtA) - i, nil } -func (m *QueryConsumersThatAreAboutToStartRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryConsumersThatAreAboutToStartRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryConsumersThatAreAboutToStartRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *QueryConsumersThatAreAboutToStartResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryConsumersThatAreAboutToStartResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryConsumersThatAreAboutToStartResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ConsumerIds) > 0 { - for iNdEx := len(m.ConsumerIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ConsumerIds[iNdEx]) - copy(dAtA[i:], m.ConsumerIds[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.ConsumerIds[iNdEx]))) - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - func (m *QueryConsumerChainStopProposalsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -3453,7 +3132,7 @@ func (m *QueryConsumerChainStopProposalsResponse) MarshalToSizedBuffer(dAtA []by return len(dAtA) - i, nil } -func (m *QueryConsumersThatAreAboutToStopRequest) Marshal() (dAtA []byte, err error) { +func (m *Chain) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -3463,67 +3142,12 @@ func (m *QueryConsumersThatAreAboutToStopRequest) Marshal() (dAtA []byte, err er return dAtA[:n], nil } -func (m *QueryConsumersThatAreAboutToStopRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *Chain) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *QueryConsumersThatAreAboutToStopRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *QueryConsumersThatAreAboutToStopResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryConsumersThatAreAboutToStopResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryConsumersThatAreAboutToStopResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ConsumerIds) > 0 { - for iNdEx := len(m.ConsumerIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ConsumerIds[iNdEx]) - copy(dAtA[i:], m.ConsumerIds[iNdEx]) - i = encodeVarintQuery(dAtA, i, uint64(len(m.ConsumerIds[iNdEx]))) - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - -func (m *Chain) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *Chain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *Chain) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *Chain) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -4748,30 +4372,6 @@ func (m *QueryConsumerChainStartProposalsResponse) Size() (n int) { return n } -func (m *QueryConsumersThatAreAboutToStartRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *QueryConsumersThatAreAboutToStartResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ConsumerIds) > 0 { - for _, s := range m.ConsumerIds { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } - } - return n -} - func (m *QueryConsumerChainStopProposalsRequest) Size() (n int) { if m == nil { return 0 @@ -4794,30 +4394,6 @@ func (m *QueryConsumerChainStopProposalsResponse) Size() (n int) { return n } -func (m *QueryConsumersThatAreAboutToStopRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *QueryConsumersThatAreAboutToStopResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ConsumerIds) > 0 { - for _, s := range m.ConsumerIds { - l = len(s) - n += 1 + l + sovQuery(uint64(l)) - } - } - return n -} - func (m *Chain) Size() (n int) { if m == nil { return 0 @@ -5787,138 +5363,6 @@ func (m *QueryConsumerChainStartProposalsResponse) Unmarshal(dAtA []byte) error } return nil } -func (m *QueryConsumersThatAreAboutToStartRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryConsumersThatAreAboutToStartResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStartResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConsumerIds", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ConsumerIds = append(m.ConsumerIds, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *QueryConsumerChainStopProposalsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -6055,138 +5499,6 @@ func (m *QueryConsumerChainStopProposalsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *QueryConsumersThatAreAboutToStopRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryConsumersThatAreAboutToStopResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumersThatAreAboutToStopResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConsumerIds", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ConsumerIds = append(m.ConsumerIds, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *Chain) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/ccv/provider/types/query.pb.gw.go b/x/ccv/provider/types/query.pb.gw.go index caa72546af..a533712da9 100644 --- a/x/ccv/provider/types/query.pb.gw.go +++ b/x/ccv/provider/types/query.pb.gw.go @@ -213,24 +213,6 @@ func local_request_Query_QueryConsumerChainStarts_0(ctx context.Context, marshal } -func request_Query_QueryConsumersThatAreAboutToStart_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumersThatAreAboutToStartRequest - var metadata runtime.ServerMetadata - - msg, err := client.QueryConsumersThatAreAboutToStart(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_QueryConsumersThatAreAboutToStart_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumersThatAreAboutToStartRequest - var metadata runtime.ServerMetadata - - msg, err := server.QueryConsumersThatAreAboutToStart(ctx, &protoReq) - return msg, metadata, err - -} - func request_Query_QueryConsumerChainStops_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq QueryConsumerChainStopProposalsRequest var metadata runtime.ServerMetadata @@ -249,24 +231,6 @@ func local_request_Query_QueryConsumerChainStops_0(ctx context.Context, marshale } -func request_Query_QueryConsumersThatAreAboutToStop_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumersThatAreAboutToStopRequest - var metadata runtime.ServerMetadata - - msg, err := client.QueryConsumersThatAreAboutToStop(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_QueryConsumersThatAreAboutToStop_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumersThatAreAboutToStopRequest - var metadata runtime.ServerMetadata - - msg, err := server.QueryConsumersThatAreAboutToStop(ctx, &protoReq) - return msg, metadata, err - -} - var ( filter_Query_QueryValidatorConsumerAddr_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) @@ -1255,29 +1219,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStart_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_QueryConsumersThatAreAboutToStart_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumersThatAreAboutToStart_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryConsumerChainStops_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1301,29 +1242,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStop_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_QueryConsumersThatAreAboutToStop_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumersThatAreAboutToStop_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryValidatorConsumerAddr_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1836,26 +1754,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStart_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_QueryConsumersThatAreAboutToStart_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumersThatAreAboutToStart_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryConsumerChainStops_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1876,26 +1774,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_QueryConsumersThatAreAboutToStop_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_QueryConsumersThatAreAboutToStop_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumersThatAreAboutToStop_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryValidatorConsumerAddr_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -2248,12 +2126,8 @@ var ( pattern_Query_QueryConsumerChainStarts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumer_chain_start_proposals"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryConsumersThatAreAboutToStart_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumers_that_are_about_to_start"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryConsumerChainStops_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumer_chain_stop_proposals"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryConsumersThatAreAboutToStop_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumers_that_are_about_to_stop"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryValidatorConsumerAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "validator_consumer_addr"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_QueryValidatorProviderAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "validator_provider_addr"}, "", runtime.AssumeColonVerbOpt(false))) @@ -2298,12 +2172,8 @@ var ( forward_Query_QueryConsumerChainStarts_0 = runtime.ForwardResponseMessage - forward_Query_QueryConsumersThatAreAboutToStart_0 = runtime.ForwardResponseMessage - forward_Query_QueryConsumerChainStops_0 = runtime.ForwardResponseMessage - forward_Query_QueryConsumersThatAreAboutToStop_0 = runtime.ForwardResponseMessage - forward_Query_QueryValidatorConsumerAddr_0 = runtime.ForwardResponseMessage forward_Query_QueryValidatorProviderAddr_0 = runtime.ForwardResponseMessage From 57f2b4c60a762049628363d375e8f3918b6ed823 Mon Sep 17 00:00:00 2001 From: insumity Date: Wed, 28 Aug 2024 13:56:30 +0200 Subject: [PATCH 3/3] removed deprecated queries --- .../ccv/provider/v1/query.proto | 51 - x/ccv/provider/client/cli/query.go | 86 - x/ccv/provider/keeper/grpc_query.go | 11 - x/ccv/provider/types/query.pb.go | 1654 ++--------------- x/ccv/provider/types/query.pb.gw.go | 195 -- 5 files changed, 180 insertions(+), 1817 deletions(-) diff --git a/proto/interchain_security/ccv/provider/v1/query.proto b/proto/interchain_security/ccv/provider/v1/query.proto index cf2fc9bbd6..6e15525fcd 100644 --- a/proto/interchain_security/ccv/provider/v1/query.proto +++ b/proto/interchain_security/ccv/provider/v1/query.proto @@ -35,20 +35,6 @@ service Query { "/interchain_security/ccv/provider/consumer_chains"; } - rpc QueryConsumerChainStarts(QueryConsumerChainStartProposalsRequest) - returns (QueryConsumerChainStartProposalsResponse) { - option deprecated = true; - option (google.api.http).get = - "/interchain_security/ccv/provider/consumer_chain_start_proposals"; - } - - rpc QueryConsumerChainStops(QueryConsumerChainStopProposalsRequest) - returns (QueryConsumerChainStopProposalsResponse) { - option deprecated = true; - option (google.api.http).get = - "/interchain_security/ccv/provider/consumer_chain_stop_proposals"; - } - // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. rpc QueryValidatorConsumerAddr(QueryValidatorConsumerAddrRequest) @@ -82,16 +68,6 @@ service Query { "/interchain_security/ccv/provider/registered_consumer_reward_denoms"; } - // [DEPRECATED] QueryProposedConsumerChainIDs returns the chain IDs of the proposed consumer chain addition proposals - // that are still in the voting period - rpc QueryProposedConsumerChainIDs( - QueryProposedChainIDsRequest) - returns (QueryProposedChainIDsResponse) { - option deprecated = true; - option (google.api.http).get = - "/interchain_security/ccv/provider/proposed_consumer_chains"; - } - // QueryAllPairsValConAddrByConsumerChainID returns a list of pair valconsensus address // between provider and consumer chain rpc QueryAllPairsValConAddrByConsumerChainID ( @@ -196,18 +172,6 @@ message QueryConsumerChainsRequest {} message QueryConsumerChainsResponse { repeated Chain chains = 1; } -message QueryConsumerChainStartProposalsRequest {} - -message QueryConsumerChainStartProposalsResponse { - ConsumerAdditionProposals proposals = 1 [deprecated = true]; -} - -message QueryConsumerChainStopProposalsRequest {} - -message QueryConsumerChainStopProposalsResponse { - ConsumerRemovalProposals proposals = 1 [deprecated = true]; -} - message Chain { string chain_id = 1; string client_id = 2; @@ -280,21 +244,6 @@ message QueryRegisteredConsumerRewardDenomsResponse { repeated string denoms = 1; } -// [DEPRECATED]: request used in query that is not currently supported -message QueryProposedChainIDsRequest {} - -// [DEPRECATED]: response used in query that is not currently supported -message QueryProposedChainIDsResponse { - repeated ProposedChain proposedChains = 1 - [ deprecated = true, (gogoproto.nullable) = false ]; -} - -message ProposedChain { - string chainID = 1 [deprecated = true]; - uint64 proposalID = 2 [deprecated = true]; - string consumer_id = 3 [deprecated = true]; -} - message QueryAllPairsValConAddrByConsumerChainIDRequest { // [DEPRECATED] use `consumer_id` instead string chain_id = 1 [deprecated = true]; diff --git a/x/ccv/provider/client/cli/query.go b/x/ccv/provider/client/cli/query.go index 24fd6c91f7..9b46ca702b 100644 --- a/x/ccv/provider/client/cli/query.go +++ b/x/ccv/provider/client/cli/query.go @@ -26,13 +26,10 @@ func NewQueryCmd() *cobra.Command { cmd.AddCommand(CmdConsumerGenesis()) cmd.AddCommand(CmdConsumerChains()) - cmd.AddCommand(CmdConsumerStartProposals()) - cmd.AddCommand(CmdConsumerStopProposals()) cmd.AddCommand(CmdConsumerValidatorKeyAssignment()) cmd.AddCommand(CmdProviderValidatorKey()) cmd.AddCommand(CmdThrottleState()) cmd.AddCommand(CmdRegisteredConsumerRewardDenoms()) - cmd.AddCommand(CmdProposedConsumerChains()) cmd.AddCommand(CmdAllPairsValConAddrByConsumerChainID()) cmd.AddCommand(CmdProviderParameters()) cmd.AddCommand(CmdConsumerChainOptedInValidators()) @@ -100,89 +97,6 @@ func CmdConsumerChains() *cobra.Command { return cmd } -func CmdProposedConsumerChains() *cobra.Command { - cmd := &cobra.Command{ - Use: "list-proposed-consumer-chains", - Short: "Query consumer chains that currently try to join ICS through governance", - Long: `Query to retrieve all the consumer ids of MsgUpdateConsumer messages that currently reside in active - proposals.`, - Args: cobra.ExactArgs(0), - RunE: func(cmd *cobra.Command, args []string) (err error) { - clientCtx, err := client.GetClientQueryContext(cmd) - if err != nil { - return err - } - queryClient := types.NewQueryClient(clientCtx) - - req := &types.QueryProposedChainIDsRequest{} - res, err := queryClient.QueryProposedConsumerChainIDs(cmd.Context(), req) - if err != nil { - return err - } - - return clientCtx.PrintProto(res) - }, - } - - flags.AddQueryFlagsToCmd(cmd) - - return cmd -} - -func CmdConsumerStartProposals() *cobra.Command { - cmd := &cobra.Command{ - Use: "list-start-proposals", - Short: "DEPRECATED! Do not use.", - Args: cobra.ExactArgs(0), - RunE: func(cmd *cobra.Command, args []string) (err error) { - clientCtx, err := client.GetClientQueryContext(cmd) - if err != nil { - return err - } - queryClient := types.NewQueryClient(clientCtx) - - req := &types.QueryConsumerChainStartProposalsRequest{} - res, err := queryClient.QueryConsumerChainStarts(cmd.Context(), req) - if err != nil { - return err - } - - return clientCtx.PrintProto(res) - }, - } - - flags.AddQueryFlagsToCmd(cmd) - - return cmd -} - -func CmdConsumerStopProposals() *cobra.Command { - cmd := &cobra.Command{ - Use: "list-stop-proposals", - Short: "DEPRECATED! Do not use.", - Args: cobra.ExactArgs(0), - RunE: func(cmd *cobra.Command, args []string) (err error) { - clientCtx, err := client.GetClientQueryContext(cmd) - if err != nil { - return err - } - queryClient := types.NewQueryClient(clientCtx) - - req := &types.QueryConsumerChainStopProposalsRequest{} - res, err := queryClient.QueryConsumerChainStops(cmd.Context(), req) - if err != nil { - return err - } - - return clientCtx.PrintProto(res) - }, - } - - flags.AddQueryFlagsToCmd(cmd) - - return cmd -} - // TODO: fix naming func CmdConsumerValidatorKeyAssignment() *cobra.Command { bech32PrefixConsAddr := sdk.GetConfig().GetBech32ConsensusAddrPrefix() diff --git a/x/ccv/provider/keeper/grpc_query.go b/x/ccv/provider/keeper/grpc_query.go index 717417bdff..bbf310783c 100644 --- a/x/ccv/provider/keeper/grpc_query.go +++ b/x/ccv/provider/keeper/grpc_query.go @@ -104,13 +104,6 @@ func (k Keeper) GetConsumerChain(ctx sdk.Context, consumerId string) (types.Chai }, nil } -func (k Keeper) QueryConsumerChainStarts(goCtx context.Context, req *types.QueryConsumerChainStartProposalsRequest) (*types.QueryConsumerChainStartProposalsResponse, error) { - return nil, status.Error(codes.Unimplemented, "This query is not supported anymore.") -} - -func (k Keeper) QueryConsumerChainStops(goCtx context.Context, req *types.QueryConsumerChainStopProposalsRequest) (*types.QueryConsumerChainStopProposalsResponse, error) { - return nil, status.Error(codes.Unimplemented, "This query is not supported anymore.") -} func (k Keeper) QueryValidatorConsumerAddr(goCtx context.Context, req *types.QueryValidatorConsumerAddrRequest) (*types.QueryValidatorConsumerAddrResponse, error) { if req == nil { return nil, status.Errorf(codes.InvalidArgument, "empty request") @@ -203,10 +196,6 @@ func (k Keeper) QueryRegisteredConsumerRewardDenoms(goCtx context.Context, req * }, nil } -func (k Keeper) QueryProposedConsumerChainIDs(goCtx context.Context, req *types.QueryProposedChainIDsRequest) (*types.QueryProposedChainIDsResponse, error) { - return nil, status.Error(codes.Unimplemented, "This query is not supported anymore.") -} - func (k Keeper) QueryAllPairsValConAddrByConsumerChainID(goCtx context.Context, req *types.QueryAllPairsValConAddrByConsumerChainIDRequest) (*types.QueryAllPairsValConAddrByConsumerChainIDResponse, error) { if req == nil { return nil, status.Errorf(codes.InvalidArgument, "empty request") diff --git a/x/ccv/provider/types/query.pb.go b/x/ccv/provider/types/query.pb.go index 71723d293f..6cd4761a9e 100644 --- a/x/ccv/provider/types/query.pb.go +++ b/x/ccv/provider/types/query.pb.go @@ -216,176 +216,6 @@ func (m *QueryConsumerChainsResponse) GetChains() []*Chain { return nil } -type QueryConsumerChainStartProposalsRequest struct { -} - -func (m *QueryConsumerChainStartProposalsRequest) Reset() { - *m = QueryConsumerChainStartProposalsRequest{} -} -func (m *QueryConsumerChainStartProposalsRequest) String() string { return proto.CompactTextString(m) } -func (*QueryConsumerChainStartProposalsRequest) ProtoMessage() {} -func (*QueryConsumerChainStartProposalsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{4} -} -func (m *QueryConsumerChainStartProposalsRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumerChainStartProposalsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumerChainStartProposalsRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumerChainStartProposalsRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumerChainStartProposalsRequest.Merge(m, src) -} -func (m *QueryConsumerChainStartProposalsRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumerChainStartProposalsRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumerChainStartProposalsRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumerChainStartProposalsRequest proto.InternalMessageInfo - -type QueryConsumerChainStartProposalsResponse struct { - Proposals *ConsumerAdditionProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` // Deprecated: Do not use. -} - -func (m *QueryConsumerChainStartProposalsResponse) Reset() { - *m = QueryConsumerChainStartProposalsResponse{} -} -func (m *QueryConsumerChainStartProposalsResponse) String() string { return proto.CompactTextString(m) } -func (*QueryConsumerChainStartProposalsResponse) ProtoMessage() {} -func (*QueryConsumerChainStartProposalsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{5} -} -func (m *QueryConsumerChainStartProposalsResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumerChainStartProposalsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumerChainStartProposalsResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumerChainStartProposalsResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumerChainStartProposalsResponse.Merge(m, src) -} -func (m *QueryConsumerChainStartProposalsResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumerChainStartProposalsResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumerChainStartProposalsResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumerChainStartProposalsResponse proto.InternalMessageInfo - -// Deprecated: Do not use. -func (m *QueryConsumerChainStartProposalsResponse) GetProposals() *ConsumerAdditionProposals { - if m != nil { - return m.Proposals - } - return nil -} - -type QueryConsumerChainStopProposalsRequest struct { -} - -func (m *QueryConsumerChainStopProposalsRequest) Reset() { - *m = QueryConsumerChainStopProposalsRequest{} -} -func (m *QueryConsumerChainStopProposalsRequest) String() string { return proto.CompactTextString(m) } -func (*QueryConsumerChainStopProposalsRequest) ProtoMessage() {} -func (*QueryConsumerChainStopProposalsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{6} -} -func (m *QueryConsumerChainStopProposalsRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumerChainStopProposalsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumerChainStopProposalsRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumerChainStopProposalsRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumerChainStopProposalsRequest.Merge(m, src) -} -func (m *QueryConsumerChainStopProposalsRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumerChainStopProposalsRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumerChainStopProposalsRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumerChainStopProposalsRequest proto.InternalMessageInfo - -type QueryConsumerChainStopProposalsResponse struct { - Proposals *ConsumerRemovalProposals `protobuf:"bytes,1,opt,name=proposals,proto3" json:"proposals,omitempty"` // Deprecated: Do not use. -} - -func (m *QueryConsumerChainStopProposalsResponse) Reset() { - *m = QueryConsumerChainStopProposalsResponse{} -} -func (m *QueryConsumerChainStopProposalsResponse) String() string { return proto.CompactTextString(m) } -func (*QueryConsumerChainStopProposalsResponse) ProtoMessage() {} -func (*QueryConsumerChainStopProposalsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{7} -} -func (m *QueryConsumerChainStopProposalsResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryConsumerChainStopProposalsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryConsumerChainStopProposalsResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryConsumerChainStopProposalsResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryConsumerChainStopProposalsResponse.Merge(m, src) -} -func (m *QueryConsumerChainStopProposalsResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryConsumerChainStopProposalsResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryConsumerChainStopProposalsResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryConsumerChainStopProposalsResponse proto.InternalMessageInfo - -// Deprecated: Do not use. -func (m *QueryConsumerChainStopProposalsResponse) GetProposals() *ConsumerRemovalProposals { - if m != nil { - return m.Proposals - } - return nil -} - type Chain struct { ChainId string `protobuf:"bytes,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` @@ -410,7 +240,7 @@ func (m *Chain) Reset() { *m = Chain{} } func (m *Chain) String() string { return proto.CompactTextString(m) } func (*Chain) ProtoMessage() {} func (*Chain) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{8} + return fileDescriptor_422512d7b7586cd7, []int{4} } func (m *Chain) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -508,7 +338,7 @@ func (m *QueryValidatorConsumerAddrRequest) Reset() { *m = QueryValidato func (m *QueryValidatorConsumerAddrRequest) String() string { return proto.CompactTextString(m) } func (*QueryValidatorConsumerAddrRequest) ProtoMessage() {} func (*QueryValidatorConsumerAddrRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{9} + return fileDescriptor_422512d7b7586cd7, []int{5} } func (m *QueryValidatorConsumerAddrRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -546,7 +376,7 @@ func (m *QueryValidatorConsumerAddrResponse) Reset() { *m = QueryValidat func (m *QueryValidatorConsumerAddrResponse) String() string { return proto.CompactTextString(m) } func (*QueryValidatorConsumerAddrResponse) ProtoMessage() {} func (*QueryValidatorConsumerAddrResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{10} + return fileDescriptor_422512d7b7586cd7, []int{6} } func (m *QueryValidatorConsumerAddrResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -595,7 +425,7 @@ func (m *QueryValidatorProviderAddrRequest) Reset() { *m = QueryValidato func (m *QueryValidatorProviderAddrRequest) String() string { return proto.CompactTextString(m) } func (*QueryValidatorProviderAddrRequest) ProtoMessage() {} func (*QueryValidatorProviderAddrRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{11} + return fileDescriptor_422512d7b7586cd7, []int{7} } func (m *QueryValidatorProviderAddrRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -633,7 +463,7 @@ func (m *QueryValidatorProviderAddrResponse) Reset() { *m = QueryValidat func (m *QueryValidatorProviderAddrResponse) String() string { return proto.CompactTextString(m) } func (*QueryValidatorProviderAddrResponse) ProtoMessage() {} func (*QueryValidatorProviderAddrResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{12} + return fileDescriptor_422512d7b7586cd7, []int{8} } func (m *QueryValidatorProviderAddrResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -676,7 +506,7 @@ func (m *QueryThrottleStateRequest) Reset() { *m = QueryThrottleStateReq func (m *QueryThrottleStateRequest) String() string { return proto.CompactTextString(m) } func (*QueryThrottleStateRequest) ProtoMessage() {} func (*QueryThrottleStateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{13} + return fileDescriptor_422512d7b7586cd7, []int{9} } func (m *QueryThrottleStateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -720,7 +550,7 @@ func (m *QueryThrottleStateResponse) Reset() { *m = QueryThrottleStateRe func (m *QueryThrottleStateResponse) String() string { return proto.CompactTextString(m) } func (*QueryThrottleStateResponse) ProtoMessage() {} func (*QueryThrottleStateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{14} + return fileDescriptor_422512d7b7586cd7, []int{10} } func (m *QueryThrottleStateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -781,7 +611,7 @@ func (m *QueryRegisteredConsumerRewardDenomsRequest) String() string { } func (*QueryRegisteredConsumerRewardDenomsRequest) ProtoMessage() {} func (*QueryRegisteredConsumerRewardDenomsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{15} + return fileDescriptor_422512d7b7586cd7, []int{11} } func (m *QueryRegisteredConsumerRewardDenomsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -822,7 +652,7 @@ func (m *QueryRegisteredConsumerRewardDenomsResponse) String() string { } func (*QueryRegisteredConsumerRewardDenomsResponse) ProtoMessage() {} func (*QueryRegisteredConsumerRewardDenomsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{16} + return fileDescriptor_422512d7b7586cd7, []int{12} } func (m *QueryRegisteredConsumerRewardDenomsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -858,148 +688,6 @@ func (m *QueryRegisteredConsumerRewardDenomsResponse) GetDenoms() []string { return nil } -type QueryProposedChainIDsRequest struct { -} - -func (m *QueryProposedChainIDsRequest) Reset() { *m = QueryProposedChainIDsRequest{} } -func (m *QueryProposedChainIDsRequest) String() string { return proto.CompactTextString(m) } -func (*QueryProposedChainIDsRequest) ProtoMessage() {} -func (*QueryProposedChainIDsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{17} -} -func (m *QueryProposedChainIDsRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryProposedChainIDsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryProposedChainIDsRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryProposedChainIDsRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryProposedChainIDsRequest.Merge(m, src) -} -func (m *QueryProposedChainIDsRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryProposedChainIDsRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryProposedChainIDsRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryProposedChainIDsRequest proto.InternalMessageInfo - -type QueryProposedChainIDsResponse struct { - ProposedChains []ProposedChain `protobuf:"bytes,1,rep,name=proposedChains,proto3" json:"proposedChains"` -} - -func (m *QueryProposedChainIDsResponse) Reset() { *m = QueryProposedChainIDsResponse{} } -func (m *QueryProposedChainIDsResponse) String() string { return proto.CompactTextString(m) } -func (*QueryProposedChainIDsResponse) ProtoMessage() {} -func (*QueryProposedChainIDsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{18} -} -func (m *QueryProposedChainIDsResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryProposedChainIDsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryProposedChainIDsResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *QueryProposedChainIDsResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryProposedChainIDsResponse.Merge(m, src) -} -func (m *QueryProposedChainIDsResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryProposedChainIDsResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryProposedChainIDsResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryProposedChainIDsResponse proto.InternalMessageInfo - -func (m *QueryProposedChainIDsResponse) GetProposedChains() []ProposedChain { - if m != nil { - return m.ProposedChains - } - return nil -} - -type ProposedChain struct { - // [DEPRECATED] use `consumer_id` instead - ChainID string `protobuf:"bytes,1,opt,name=chainID,proto3" json:"chainID,omitempty"` // Deprecated: Do not use. - ProposalID uint64 `protobuf:"varint,2,opt,name=proposalID,proto3" json:"proposalID,omitempty"` - ConsumerId string `protobuf:"bytes,3,opt,name=consumer_id,json=consumerId,proto3" json:"consumer_id,omitempty"` -} - -func (m *ProposedChain) Reset() { *m = ProposedChain{} } -func (m *ProposedChain) String() string { return proto.CompactTextString(m) } -func (*ProposedChain) ProtoMessage() {} -func (*ProposedChain) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{19} -} -func (m *ProposedChain) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ProposedChain) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ProposedChain.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *ProposedChain) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProposedChain.Merge(m, src) -} -func (m *ProposedChain) XXX_Size() int { - return m.Size() -} -func (m *ProposedChain) XXX_DiscardUnknown() { - xxx_messageInfo_ProposedChain.DiscardUnknown(m) -} - -var xxx_messageInfo_ProposedChain proto.InternalMessageInfo - -// Deprecated: Do not use. -func (m *ProposedChain) GetChainID() string { - if m != nil { - return m.ChainID - } - return "" -} - -func (m *ProposedChain) GetProposalID() uint64 { - if m != nil { - return m.ProposalID - } - return 0 -} - -func (m *ProposedChain) GetConsumerId() string { - if m != nil { - return m.ConsumerId - } - return "" -} - type QueryAllPairsValConAddrByConsumerChainIDRequest struct { // [DEPRECATED] use `consumer_id` instead ChainId string `protobuf:"bytes,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Deprecated: Do not use. @@ -1015,7 +703,7 @@ func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) String() string { } func (*QueryAllPairsValConAddrByConsumerChainIDRequest) ProtoMessage() {} func (*QueryAllPairsValConAddrByConsumerChainIDRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{20} + return fileDescriptor_422512d7b7586cd7, []int{13} } func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1071,7 +759,7 @@ func (m *QueryAllPairsValConAddrByConsumerChainIDResponse) String() string { } func (*QueryAllPairsValConAddrByConsumerChainIDResponse) ProtoMessage() {} func (*QueryAllPairsValConAddrByConsumerChainIDResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{21} + return fileDescriptor_422512d7b7586cd7, []int{14} } func (m *QueryAllPairsValConAddrByConsumerChainIDResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1119,7 +807,7 @@ func (m *PairValConAddrProviderAndConsumer) Reset() { *m = PairValConAdd func (m *PairValConAddrProviderAndConsumer) String() string { return proto.CompactTextString(m) } func (*PairValConAddrProviderAndConsumer) ProtoMessage() {} func (*PairValConAddrProviderAndConsumer) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{22} + return fileDescriptor_422512d7b7586cd7, []int{15} } func (m *PairValConAddrProviderAndConsumer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1176,7 +864,7 @@ func (m *QueryParamsRequest) Reset() { *m = QueryParamsRequest{} } func (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) } func (*QueryParamsRequest) ProtoMessage() {} func (*QueryParamsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{23} + return fileDescriptor_422512d7b7586cd7, []int{16} } func (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1213,7 +901,7 @@ func (m *QueryParamsResponse) Reset() { *m = QueryParamsResponse{} } func (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) } func (*QueryParamsResponse) ProtoMessage() {} func (*QueryParamsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{24} + return fileDescriptor_422512d7b7586cd7, []int{17} } func (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1263,7 +951,7 @@ func (m *QueryConsumerChainOptedInValidatorsRequest) String() string { } func (*QueryConsumerChainOptedInValidatorsRequest) ProtoMessage() {} func (*QueryConsumerChainOptedInValidatorsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{25} + return fileDescriptor_422512d7b7586cd7, []int{18} } func (m *QueryConsumerChainOptedInValidatorsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1320,7 +1008,7 @@ func (m *QueryConsumerChainOptedInValidatorsResponse) String() string { } func (*QueryConsumerChainOptedInValidatorsResponse) ProtoMessage() {} func (*QueryConsumerChainOptedInValidatorsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{26} + return fileDescriptor_422512d7b7586cd7, []int{19} } func (m *QueryConsumerChainOptedInValidatorsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1366,7 +1054,7 @@ func (m *QueryConsumerValidatorsRequest) Reset() { *m = QueryConsumerVal func (m *QueryConsumerValidatorsRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsRequest) ProtoMessage() {} func (*QueryConsumerValidatorsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{27} + return fileDescriptor_422512d7b7586cd7, []int{20} } func (m *QueryConsumerValidatorsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1445,7 +1133,7 @@ func (m *QueryConsumerValidatorsValidator) Reset() { *m = QueryConsumerV func (m *QueryConsumerValidatorsValidator) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsValidator) ProtoMessage() {} func (*QueryConsumerValidatorsValidator) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{28} + return fileDescriptor_422512d7b7586cd7, []int{21} } func (m *QueryConsumerValidatorsValidator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1553,7 +1241,7 @@ func (m *QueryConsumerValidatorsResponse) Reset() { *m = QueryConsumerVa func (m *QueryConsumerValidatorsResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerValidatorsResponse) ProtoMessage() {} func (*QueryConsumerValidatorsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{29} + return fileDescriptor_422512d7b7586cd7, []int{22} } func (m *QueryConsumerValidatorsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1602,7 +1290,7 @@ func (m *QueryConsumerChainsValidatorHasToValidateRequest) String() string { } func (*QueryConsumerChainsValidatorHasToValidateRequest) ProtoMessage() {} func (*QueryConsumerChainsValidatorHasToValidateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{30} + return fileDescriptor_422512d7b7586cd7, []int{23} } func (m *QueryConsumerChainsValidatorHasToValidateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1650,7 +1338,7 @@ func (m *QueryConsumerChainsValidatorHasToValidateResponse) String() string { } func (*QueryConsumerChainsValidatorHasToValidateResponse) ProtoMessage() {} func (*QueryConsumerChainsValidatorHasToValidateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{31} + return fileDescriptor_422512d7b7586cd7, []int{24} } func (m *QueryConsumerChainsValidatorHasToValidateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1702,7 +1390,7 @@ func (m *QueryValidatorConsumerCommissionRateRequest) String() string { } func (*QueryValidatorConsumerCommissionRateRequest) ProtoMessage() {} func (*QueryValidatorConsumerCommissionRateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{32} + return fileDescriptor_422512d7b7586cd7, []int{25} } func (m *QueryValidatorConsumerCommissionRateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1766,7 +1454,7 @@ func (m *QueryValidatorConsumerCommissionRateResponse) String() string { } func (*QueryValidatorConsumerCommissionRateResponse) ProtoMessage() {} func (*QueryValidatorConsumerCommissionRateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{33} + return fileDescriptor_422512d7b7586cd7, []int{26} } func (m *QueryValidatorConsumerCommissionRateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1802,7 +1490,7 @@ func (m *QueryBlocksUntilNextEpochRequest) Reset() { *m = QueryBlocksUnt func (m *QueryBlocksUntilNextEpochRequest) String() string { return proto.CompactTextString(m) } func (*QueryBlocksUntilNextEpochRequest) ProtoMessage() {} func (*QueryBlocksUntilNextEpochRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{34} + return fileDescriptor_422512d7b7586cd7, []int{27} } func (m *QueryBlocksUntilNextEpochRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1840,7 +1528,7 @@ func (m *QueryBlocksUntilNextEpochResponse) Reset() { *m = QueryBlocksUn func (m *QueryBlocksUntilNextEpochResponse) String() string { return proto.CompactTextString(m) } func (*QueryBlocksUntilNextEpochResponse) ProtoMessage() {} func (*QueryBlocksUntilNextEpochResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{35} + return fileDescriptor_422512d7b7586cd7, []int{28} } func (m *QueryBlocksUntilNextEpochResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1886,7 +1574,7 @@ func (m *QueryConsumerIdFromClientIdRequest) Reset() { *m = QueryConsume func (m *QueryConsumerIdFromClientIdRequest) String() string { return proto.CompactTextString(m) } func (*QueryConsumerIdFromClientIdRequest) ProtoMessage() {} func (*QueryConsumerIdFromClientIdRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{36} + return fileDescriptor_422512d7b7586cd7, []int{29} } func (m *QueryConsumerIdFromClientIdRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1931,7 +1619,7 @@ func (m *QueryConsumerIdFromClientIdResponse) Reset() { *m = QueryConsum func (m *QueryConsumerIdFromClientIdResponse) String() string { return proto.CompactTextString(m) } func (*QueryConsumerIdFromClientIdResponse) ProtoMessage() {} func (*QueryConsumerIdFromClientIdResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_422512d7b7586cd7, []int{37} + return fileDescriptor_422512d7b7586cd7, []int{30} } func (m *QueryConsumerIdFromClientIdResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1972,10 +1660,6 @@ func init() { proto.RegisterType((*QueryConsumerGenesisResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerGenesisResponse") proto.RegisterType((*QueryConsumerChainsRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainsRequest") proto.RegisterType((*QueryConsumerChainsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainsResponse") - proto.RegisterType((*QueryConsumerChainStartProposalsRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStartProposalsRequest") - proto.RegisterType((*QueryConsumerChainStartProposalsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStartProposalsResponse") - proto.RegisterType((*QueryConsumerChainStopProposalsRequest)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStopProposalsRequest") - proto.RegisterType((*QueryConsumerChainStopProposalsResponse)(nil), "interchain_security.ccv.provider.v1.QueryConsumerChainStopProposalsResponse") proto.RegisterType((*Chain)(nil), "interchain_security.ccv.provider.v1.Chain") proto.RegisterType((*QueryValidatorConsumerAddrRequest)(nil), "interchain_security.ccv.provider.v1.QueryValidatorConsumerAddrRequest") proto.RegisterType((*QueryValidatorConsumerAddrResponse)(nil), "interchain_security.ccv.provider.v1.QueryValidatorConsumerAddrResponse") @@ -1985,9 +1669,6 @@ func init() { proto.RegisterType((*QueryThrottleStateResponse)(nil), "interchain_security.ccv.provider.v1.QueryThrottleStateResponse") proto.RegisterType((*QueryRegisteredConsumerRewardDenomsRequest)(nil), "interchain_security.ccv.provider.v1.QueryRegisteredConsumerRewardDenomsRequest") proto.RegisterType((*QueryRegisteredConsumerRewardDenomsResponse)(nil), "interchain_security.ccv.provider.v1.QueryRegisteredConsumerRewardDenomsResponse") - proto.RegisterType((*QueryProposedChainIDsRequest)(nil), "interchain_security.ccv.provider.v1.QueryProposedChainIDsRequest") - proto.RegisterType((*QueryProposedChainIDsResponse)(nil), "interchain_security.ccv.provider.v1.QueryProposedChainIDsResponse") - proto.RegisterType((*ProposedChain)(nil), "interchain_security.ccv.provider.v1.ProposedChain") proto.RegisterType((*QueryAllPairsValConAddrByConsumerChainIDRequest)(nil), "interchain_security.ccv.provider.v1.QueryAllPairsValConAddrByConsumerChainIDRequest") proto.RegisterType((*QueryAllPairsValConAddrByConsumerChainIDResponse)(nil), "interchain_security.ccv.provider.v1.QueryAllPairsValConAddrByConsumerChainIDResponse") proto.RegisterType((*PairValConAddrProviderAndConsumer)(nil), "interchain_security.ccv.provider.v1.PairValConAddrProviderAndConsumer") @@ -2013,159 +1694,143 @@ func init() { } var fileDescriptor_422512d7b7586cd7 = []byte{ - // 2429 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xcd, 0x6f, 0xdb, 0xc8, - 0x15, 0x37, 0xe5, 0x8f, 0xd8, 0xe3, 0xc4, 0xd9, 0x9d, 0x7c, 0x29, 0xb2, 0x63, 0x39, 0x4c, 0xd2, - 0x2a, 0x5f, 0xa2, 0xed, 0xc5, 0x76, 0x37, 0x69, 0xb3, 0x89, 0x25, 0xc7, 0x59, 0x35, 0xd9, 0xc4, - 0xcb, 0x38, 0x69, 0xe1, 0x85, 0xcb, 0xd0, 0xe4, 0x54, 0x66, 0x4d, 0x71, 0x68, 0x0e, 0xa5, 0x44, - 0x08, 0x02, 0xf4, 0xeb, 0x90, 0x2e, 0x8a, 0x36, 0x45, 0x51, 0xa0, 0xc7, 0xbd, 0x14, 0xe8, 0xa1, - 0xa7, 0x62, 0xd1, 0xa2, 0xb7, 0x3d, 0xee, 0xad, 0xdb, 0xdd, 0x4b, 0xd1, 0x02, 0x69, 0x91, 0xf4, - 0x50, 0x14, 0x28, 0x50, 0x6c, 0xfb, 0x07, 0x14, 0x1c, 0x0e, 0x47, 0x24, 0x45, 0x59, 0x94, 0xe4, - 0xc3, 0xde, 0xcc, 0x99, 0x37, 0xbf, 0x79, 0xef, 0xcd, 0x9b, 0x37, 0xef, 0xfd, 0x64, 0x20, 0x19, - 0x96, 0x8b, 0x1c, 0x6d, 0x4b, 0x35, 0x2c, 0x85, 0x20, 0xad, 0xee, 0x18, 0x6e, 0x53, 0xd2, 0xb4, - 0x86, 0x64, 0x3b, 0xb8, 0x61, 0xe8, 0xc8, 0x91, 0x1a, 0x0b, 0xd2, 0x4e, 0x1d, 0x39, 0xcd, 0xa2, - 0xed, 0x60, 0x17, 0xc3, 0x53, 0x09, 0x0b, 0x8a, 0x9a, 0xd6, 0x28, 0x06, 0x0b, 0x8a, 0x8d, 0x85, - 0xdc, 0x4c, 0x15, 0xe3, 0xaa, 0x89, 0x24, 0xd5, 0x36, 0x24, 0xd5, 0xb2, 0xb0, 0xab, 0xba, 0x06, - 0xb6, 0x88, 0x0f, 0x91, 0x3b, 0x5c, 0xc5, 0x55, 0x4c, 0xff, 0x94, 0xbc, 0xbf, 0xd8, 0x68, 0x9e, - 0xad, 0xa1, 0x5f, 0x9b, 0xf5, 0x6f, 0x4b, 0xae, 0x51, 0x43, 0xc4, 0x55, 0x6b, 0x36, 0x13, 0x58, - 0x4c, 0xa3, 0x2a, 0xd7, 0xc2, 0x5f, 0x33, 0xdf, 0x69, 0x4d, 0x63, 0x41, 0x22, 0x5b, 0xaa, 0x83, - 0x74, 0x45, 0xc3, 0x16, 0xa9, 0xd7, 0xf8, 0x8a, 0x33, 0xbb, 0xac, 0x78, 0x68, 0x38, 0x88, 0x89, - 0xcd, 0xb8, 0xc8, 0xd2, 0x91, 0x53, 0x33, 0x2c, 0x57, 0xd2, 0x9c, 0xa6, 0xed, 0x62, 0x69, 0x1b, - 0x35, 0x03, 0x0b, 0x8f, 0x6b, 0x98, 0xd4, 0x30, 0x51, 0x7c, 0x23, 0xfd, 0x0f, 0x36, 0x75, 0xda, - 0xff, 0x92, 0x88, 0xab, 0x6e, 0x1b, 0x56, 0x55, 0x6a, 0x2c, 0x6c, 0x22, 0x57, 0x5d, 0x08, 0xbe, - 0x7d, 0x29, 0x71, 0x03, 0x4c, 0xbf, 0xeb, 0x39, 0xbd, 0xcc, 0x94, 0xbb, 0x81, 0x2c, 0x44, 0x0c, - 0x22, 0xa3, 0x9d, 0x3a, 0x22, 0x2e, 0x3c, 0x01, 0xc6, 0x7d, 0x0d, 0x0d, 0x3d, 0x2b, 0xcc, 0x09, - 0x85, 0x89, 0x52, 0x26, 0x2b, 0xc8, 0xfb, 0xe8, 0x58, 0x45, 0x87, 0x79, 0x30, 0x19, 0x58, 0xe5, - 0x49, 0x64, 0x3c, 0x09, 0x19, 0x04, 0x43, 0x15, 0x5d, 0x7c, 0x0c, 0x66, 0x92, 0xe1, 0x89, 0x8d, - 0x2d, 0x82, 0xe0, 0x7b, 0xe0, 0x40, 0xd5, 0x1f, 0x52, 0x88, 0xab, 0xba, 0x88, 0x6e, 0x32, 0xb9, - 0x38, 0x5f, 0xec, 0x74, 0xf8, 0x8d, 0x85, 0x62, 0x0c, 0xeb, 0xae, 0xb7, 0xae, 0x34, 0xf2, 0xf1, - 0xf3, 0xfc, 0x90, 0xbc, 0xbf, 0x1a, 0x1a, 0x13, 0x67, 0x40, 0x2e, 0xb2, 0x79, 0xd9, 0x83, 0x0b, - 0x4c, 0x13, 0xd5, 0x98, 0xe5, 0xc1, 0x2c, 0xd3, 0xac, 0x04, 0xc6, 0xe8, 0xf6, 0x24, 0x2b, 0xcc, - 0x0d, 0x17, 0x26, 0x17, 0xcf, 0x15, 0x53, 0xc4, 0x63, 0x91, 0x82, 0xc8, 0x6c, 0xa5, 0x78, 0x16, - 0x7c, 0xb9, 0x7d, 0x8b, 0xbb, 0xae, 0xea, 0xb8, 0xab, 0x0e, 0xb6, 0x31, 0x51, 0x4d, 0xae, 0xcd, - 0x8f, 0x05, 0x50, 0xe8, 0x2e, 0xcb, 0x74, 0x7b, 0x00, 0x26, 0xec, 0x60, 0x90, 0x79, 0xec, 0xad, - 0x74, 0xea, 0x31, 0xf0, 0x25, 0x5d, 0x37, 0xbc, 0x8b, 0xc2, 0xa1, 0xe9, 0xb1, 0xb6, 0x40, 0xc5, - 0x02, 0xf8, 0x52, 0x92, 0x36, 0xd8, 0x6e, 0x53, 0xfc, 0x7d, 0x21, 0xd9, 0xc8, 0x88, 0x28, 0xd3, - 0x5b, 0x69, 0xd7, 0xfb, 0x4a, 0x4f, 0x7a, 0xcb, 0xa8, 0x86, 0x1b, 0xaa, 0xd9, 0x51, 0xed, 0x5f, - 0x66, 0xc0, 0x28, 0xdd, 0x1f, 0x1e, 0x8f, 0x07, 0x6e, 0x2b, 0x68, 0xa7, 0xc1, 0x84, 0x66, 0x1a, - 0xc8, 0x72, 0x5b, 0x21, 0x3b, 0xee, 0x0f, 0x54, 0x74, 0x78, 0x08, 0x8c, 0xba, 0xd8, 0x56, 0x6e, - 0x67, 0x87, 0xe7, 0x84, 0xc2, 0x01, 0x79, 0xc4, 0xc5, 0xf6, 0x6d, 0x78, 0x0e, 0xc0, 0x9a, 0x61, - 0x29, 0x36, 0x7e, 0xe8, 0xc5, 0xb9, 0xa5, 0xf8, 0x12, 0x23, 0x73, 0x42, 0x61, 0x58, 0x9e, 0xaa, - 0x19, 0xd6, 0xaa, 0x37, 0x51, 0xb1, 0xd6, 0x3c, 0xd9, 0x79, 0x70, 0xb8, 0xa1, 0x9a, 0x86, 0xae, - 0xba, 0xd8, 0x21, 0x6c, 0x89, 0xa6, 0xda, 0xd9, 0x51, 0x8a, 0x07, 0x5b, 0x73, 0x74, 0x51, 0x59, - 0xb5, 0xe1, 0x39, 0xf0, 0x2a, 0x1f, 0x55, 0x08, 0x72, 0xa9, 0xf8, 0x18, 0x15, 0x3f, 0xc8, 0x27, - 0xee, 0x22, 0xd7, 0x93, 0x9d, 0x01, 0x13, 0xaa, 0x69, 0xe2, 0x87, 0xa6, 0x41, 0xdc, 0xec, 0xbe, - 0xb9, 0xe1, 0xc2, 0x84, 0xdc, 0x1a, 0x80, 0x39, 0x30, 0xae, 0x23, 0xab, 0x49, 0x27, 0xc7, 0xe9, - 0x24, 0xff, 0x16, 0x7f, 0x23, 0x80, 0x93, 0xf4, 0x9c, 0xee, 0x07, 0x90, 0xa1, 0x60, 0x70, 0x52, - 0xde, 0xf7, 0x2b, 0xe0, 0x95, 0xe0, 0x58, 0x14, 0x55, 0xd7, 0x1d, 0x44, 0x88, 0xef, 0xc1, 0x12, - 0xfc, 0xfc, 0x79, 0x7e, 0xaa, 0xa9, 0xd6, 0xcc, 0xcb, 0x22, 0x9b, 0x10, 0xe5, 0x83, 0x81, 0xec, - 0x92, 0x3f, 0x12, 0x4f, 0x17, 0xc3, 0xf1, 0x74, 0x71, 0x79, 0xfc, 0xe9, 0x07, 0xf9, 0xa1, 0x7f, - 0x7e, 0x90, 0x1f, 0x12, 0xef, 0x00, 0x71, 0x37, 0x6d, 0x59, 0x40, 0x9d, 0x05, 0xaf, 0x70, 0xc0, - 0x40, 0x1f, 0xff, 0xb4, 0x0f, 0x6a, 0x21, 0x79, 0x4f, 0x9b, 0x76, 0xfb, 0x57, 0x43, 0xda, 0xa5, - 0xb7, 0xbf, 0x6d, 0xbf, 0x5d, 0xec, 0x8f, 0xe9, 0x30, 0x90, 0xfd, 0x51, 0x6d, 0x5b, 0xf6, 0xb7, - 0x9d, 0x07, 0xb3, 0x3f, 0xe6, 0x7b, 0x71, 0x1a, 0x1c, 0xa7, 0x80, 0x6b, 0x5b, 0x0e, 0x76, 0x5d, - 0x13, 0xd1, 0x14, 0x19, 0x5c, 0xe2, 0x3f, 0x09, 0x2c, 0x55, 0xc6, 0x66, 0xd9, 0x36, 0x79, 0x30, - 0x49, 0x4c, 0x95, 0x6c, 0x29, 0x35, 0xe4, 0x22, 0x87, 0xee, 0x30, 0x2c, 0x03, 0x3a, 0xf4, 0x8e, - 0x37, 0x02, 0x17, 0xc1, 0x91, 0x90, 0x80, 0x42, 0x23, 0x52, 0xb5, 0x34, 0x44, 0x9d, 0x33, 0x2c, - 0x1f, 0x6a, 0x89, 0x2e, 0x05, 0x53, 0xf0, 0x5b, 0x20, 0x6b, 0xa1, 0x47, 0xae, 0xe2, 0x20, 0xdb, - 0x44, 0x96, 0x41, 0xb6, 0x14, 0x4d, 0xb5, 0x74, 0xcf, 0x58, 0x44, 0x3d, 0x33, 0xb9, 0x98, 0x2b, - 0xfa, 0x2f, 0x75, 0x31, 0x78, 0xa9, 0x8b, 0x6b, 0xc1, 0x4b, 0x5d, 0x1a, 0xf7, 0xf2, 0xfd, 0xb3, - 0xbf, 0xe5, 0x05, 0xf9, 0xa8, 0x87, 0x22, 0x07, 0x20, 0xe5, 0x00, 0x43, 0xbc, 0x00, 0xce, 0x51, - 0x93, 0x64, 0x54, 0x35, 0x88, 0x8b, 0x1c, 0xa4, 0xb7, 0xb2, 0xc8, 0x43, 0xd5, 0xd1, 0x97, 0x91, - 0x85, 0x6b, 0x3c, 0x8d, 0x5d, 0x07, 0xe7, 0x53, 0x49, 0x33, 0x8f, 0x1c, 0x05, 0x63, 0x3a, 0x1d, - 0xa1, 0xaf, 0xc3, 0x84, 0xcc, 0xbe, 0xc4, 0x59, 0xf6, 0xde, 0xf9, 0x19, 0x0a, 0xe9, 0x34, 0x19, - 0x55, 0x96, 0xf9, 0x36, 0xdf, 0x13, 0xc0, 0x89, 0x0e, 0x02, 0x3c, 0xb7, 0x4f, 0xd9, 0xe1, 0xb9, - 0xe0, 0xfd, 0x59, 0x4c, 0x95, 0x28, 0x23, 0xb0, 0xec, 0x51, 0x8c, 0xe1, 0x89, 0x16, 0x38, 0x10, - 0x11, 0x83, 0x33, 0x80, 0x05, 0xf8, 0x72, 0x7b, 0xcc, 0x2f, 0xc3, 0x59, 0x00, 0x82, 0x04, 0x5b, - 0x59, 0xa6, 0x07, 0x3a, 0x22, 0x87, 0x46, 0xba, 0x06, 0xb5, 0xb8, 0x03, 0x24, 0x6a, 0xf2, 0x92, - 0x69, 0xae, 0xaa, 0x86, 0x43, 0xee, 0xab, 0x66, 0x19, 0x5b, 0x5e, 0x5c, 0x96, 0xa2, 0x8f, 0x46, - 0x65, 0x79, 0xaf, 0xca, 0x8e, 0x5f, 0x09, 0x60, 0x3e, 0xfd, 0x9e, 0xcc, 0xf3, 0x3b, 0xe0, 0x55, - 0x5b, 0x35, 0x1c, 0xa5, 0xa1, 0x9a, 0x5e, 0xad, 0x46, 0x2f, 0x14, 0x73, 0xfe, 0x4a, 0x3a, 0xe7, - 0xab, 0x86, 0xd3, 0xda, 0x88, 0x5f, 0x58, 0xab, 0x15, 0x4a, 0x53, 0x76, 0x44, 0x44, 0xfc, 0x9f, - 0x00, 0x4e, 0x76, 0x5d, 0x05, 0x57, 0x3a, 0xdd, 0xf2, 0xd2, 0xf4, 0xe7, 0xcf, 0xf3, 0xc7, 0xfc, - 0xac, 0x13, 0x97, 0x48, 0x48, 0xbf, 0x2b, 0x1d, 0xb3, 0x57, 0x08, 0x27, 0x2e, 0x91, 0x90, 0xc6, - 0xae, 0x82, 0xfd, 0x5c, 0x6a, 0x1b, 0x35, 0xd9, 0x6d, 0x9d, 0x29, 0xb6, 0x2a, 0xd5, 0xa2, 0x5f, - 0xa9, 0x16, 0x57, 0xeb, 0x9b, 0xa6, 0xa1, 0xdd, 0x44, 0x4d, 0x99, 0x1f, 0xd8, 0x4d, 0xd4, 0x14, - 0x0f, 0x03, 0xe8, 0x5f, 0x02, 0xd5, 0x51, 0x5b, 0x57, 0xf0, 0x01, 0x38, 0x14, 0x19, 0x65, 0xc7, - 0x52, 0x01, 0x63, 0x36, 0x1d, 0x61, 0x15, 0xc3, 0xf9, 0x94, 0x67, 0xe1, 0x2d, 0x61, 0x37, 0x80, - 0x01, 0x88, 0x26, 0x4b, 0x09, 0x91, 0x08, 0xb8, 0x63, 0xbb, 0x48, 0xaf, 0x58, 0x3c, 0xd1, 0xee, - 0x59, 0xed, 0xbb, 0xc3, 0x52, 0x4a, 0xb7, 0xdd, 0x78, 0xc1, 0x79, 0x22, 0x5c, 0x38, 0xc4, 0x8e, - 0x13, 0x05, 0x99, 0x66, 0x3a, 0x54, 0x41, 0x44, 0xcf, 0x17, 0x11, 0xf1, 0x01, 0x98, 0x8d, 0x6c, - 0xb9, 0xf7, 0x46, 0xfd, 0x6c, 0x1f, 0x98, 0xeb, 0xb0, 0x05, 0xff, 0x2b, 0xb1, 0x4c, 0x10, 0xd2, - 0x97, 0x09, 0xf1, 0xf8, 0xca, 0xf4, 0x18, 0x5f, 0x30, 0x0b, 0x46, 0x69, 0xe1, 0x45, 0x23, 0x73, - 0x98, 0x5a, 0xe8, 0x0f, 0xc0, 0x4b, 0x60, 0xc4, 0xf1, 0x1e, 0x98, 0x11, 0xaa, 0xcd, 0x19, 0x2f, - 0x3a, 0xfe, 0xf2, 0x3c, 0x3f, 0xed, 0xb7, 0x4a, 0x44, 0xdf, 0x2e, 0x1a, 0x58, 0xaa, 0xa9, 0xee, - 0x56, 0xf1, 0x16, 0xaa, 0xaa, 0x5a, 0x73, 0x19, 0x69, 0x59, 0x41, 0xa6, 0x4b, 0xe0, 0x19, 0x30, - 0xc5, 0xb5, 0xf2, 0xd1, 0x47, 0xe9, 0xe3, 0x76, 0x20, 0x18, 0xa5, 0x05, 0x1d, 0xdc, 0x00, 0x59, - 0x2e, 0xa6, 0xe1, 0x5a, 0xcd, 0x20, 0xc4, 0xc0, 0x96, 0x42, 0x77, 0x1d, 0xa3, 0xbb, 0x9e, 0x4a, - 0xb1, 0xab, 0x7c, 0x34, 0x00, 0x29, 0x73, 0x0c, 0xd9, 0xd3, 0x62, 0x03, 0x64, 0xb9, 0x6b, 0xe3, - 0xf0, 0xfb, 0x7a, 0x80, 0x0f, 0x40, 0x62, 0xf0, 0x37, 0xc1, 0xa4, 0x8e, 0x88, 0xe6, 0x18, 0xb6, - 0xd7, 0x1e, 0x64, 0xc7, 0xa9, 0xe7, 0x4f, 0x15, 0x59, 0x63, 0x19, 0xb4, 0x8e, 0xac, 0x95, 0x2c, - 0x2e, 0xb7, 0x44, 0xd9, 0x4d, 0x0b, 0xaf, 0x86, 0x1b, 0xe0, 0x38, 0xd7, 0x15, 0xdb, 0xc8, 0xa1, - 0x05, 0x6e, 0x10, 0x0f, 0x13, 0x54, 0xd9, 0x93, 0x9f, 0x7e, 0x78, 0xf1, 0x04, 0x43, 0xe7, 0xf1, - 0xc3, 0xe2, 0xe0, 0xae, 0xeb, 0x18, 0x56, 0x55, 0x3e, 0x16, 0x60, 0xdc, 0x61, 0x10, 0x41, 0x98, - 0x1c, 0x05, 0x63, 0xdf, 0x51, 0x0d, 0x13, 0xe9, 0x59, 0x30, 0x27, 0x14, 0xc6, 0x65, 0xf6, 0x05, - 0x2f, 0x83, 0x31, 0xaf, 0x97, 0xac, 0x93, 0xec, 0xe4, 0x9c, 0x50, 0x98, 0x5a, 0x14, 0x3b, 0xa9, - 0x5f, 0xc2, 0x96, 0x7e, 0x97, 0x4a, 0xca, 0x6c, 0x05, 0x5c, 0x03, 0x3c, 0x1a, 0x15, 0x17, 0x6f, - 0x23, 0x8b, 0x64, 0xf7, 0x53, 0x45, 0xcf, 0x33, 0xaf, 0x1e, 0x69, 0xf7, 0x6a, 0xc5, 0x72, 0x3f, - 0xfd, 0xf0, 0x22, 0x60, 0x9b, 0x54, 0x2c, 0x97, 0xbe, 0xb8, 0x14, 0x63, 0x8d, 0x42, 0x78, 0xa1, - 0xc3, 0x51, 0xfd, 0xd0, 0x39, 0xe0, 0x87, 0x4e, 0x30, 0xea, 0x87, 0xce, 0x57, 0xc0, 0x31, 0x76, - 0xb9, 0x11, 0x51, 0xb4, 0xba, 0xe3, 0x78, 0x3d, 0x0a, 0xb2, 0xb1, 0xb6, 0x95, 0x9d, 0xa2, 0x16, - 0x1e, 0xe1, 0xd3, 0x65, 0x7f, 0xf6, 0xba, 0x37, 0x29, 0x3e, 0x15, 0x40, 0xbe, 0xe3, 0xb5, 0x67, - 0xd9, 0x05, 0x01, 0xd0, 0x4a, 0x1c, 0xec, 0x55, 0xbb, 0x9e, 0x2a, 0x93, 0x76, 0xbb, 0xed, 0x72, - 0x08, 0x58, 0xdc, 0x61, 0xef, 0x6e, 0xb4, 0xa9, 0xe6, 0xb2, 0x6f, 0xab, 0x64, 0x0d, 0xb3, 0xaf, - 0xa0, 0xf8, 0x1c, 0x30, 0x5b, 0x88, 0x2a, 0x58, 0xe8, 0x61, 0x4b, 0xe6, 0x8e, 0x0b, 0x00, 0xb6, - 0x6e, 0x29, 0xcb, 0x87, 0x41, 0x86, 0xe5, 0x8f, 0xa4, 0x5f, 0x20, 0xe8, 0xb4, 0x77, 0x38, 0x9f, - 0xdc, 0x8d, 0x44, 0xaf, 0xcf, 0x17, 0xa3, 0x8b, 0x12, 0xab, 0xe0, 0x42, 0x3a, 0x6d, 0x99, 0x33, - 0xde, 0x60, 0x49, 0x51, 0x48, 0x9f, 0x3f, 0xe8, 0x02, 0x51, 0x64, 0x6f, 0x41, 0xc9, 0xc4, 0xda, - 0x36, 0xb9, 0x67, 0xb9, 0x86, 0x79, 0x1b, 0x3d, 0xf2, 0xa3, 0x32, 0x78, 0xd5, 0xd7, 0x59, 0xdb, - 0x95, 0x2c, 0xc3, 0x34, 0x78, 0x1d, 0x1c, 0xdb, 0xa4, 0xf3, 0x4a, 0xdd, 0x13, 0x50, 0x68, 0x63, - 0xe0, 0x47, 0xbe, 0x40, 0x0b, 0xce, 0xc3, 0x9b, 0x09, 0xcb, 0xc5, 0x25, 0xd6, 0x24, 0x95, 0xb9, - 0xed, 0x2b, 0x0e, 0xae, 0x95, 0x59, 0x2f, 0x1f, 0x9c, 0x46, 0xa4, 0xdf, 0x17, 0xa2, 0xfd, 0xbe, - 0xb8, 0x02, 0x4e, 0xed, 0x0a, 0xd1, 0xea, 0x80, 0xc2, 0x3e, 0x17, 0xe2, 0x3e, 0x5f, 0xfc, 0xe9, - 0x69, 0x30, 0x4a, 0x81, 0xe0, 0xaf, 0x33, 0xe0, 0x70, 0x12, 0xe7, 0x05, 0xaf, 0xf5, 0x7e, 0xdd, - 0xa2, 0x6c, 0x5c, 0x6e, 0x69, 0x00, 0x04, 0xdf, 0x10, 0xf1, 0x7d, 0xe1, 0xfb, 0x9f, 0xfd, 0xe3, - 0xe7, 0x99, 0x1f, 0x08, 0xeb, 0x25, 0x78, 0xad, 0x3b, 0x27, 0xcb, 0x8d, 0x66, 0xc4, 0x9a, 0xf4, - 0x38, 0xe4, 0x86, 0x27, 0xf0, 0x4a, 0x5f, 0x08, 0xec, 0x6a, 0x3c, 0x81, 0x9f, 0x09, 0xac, 0xe4, - 0x8b, 0xde, 0x5d, 0x78, 0xb5, 0x77, 0x3b, 0x23, 0xdc, 0x5e, 0xee, 0x5a, 0xff, 0x00, 0xcc, 0x4f, - 0x97, 0xa8, 0x9b, 0x5e, 0x83, 0x0b, 0x3d, 0x58, 0xe8, 0xb3, 0x7e, 0xf0, 0x87, 0x19, 0x90, 0xed, - 0x40, 0xe5, 0x11, 0x78, 0xab, 0x4f, 0xcd, 0x12, 0x59, 0xc3, 0xdc, 0x3b, 0x7b, 0x84, 0xc6, 0x8c, - 0xbe, 0x49, 0x8d, 0xee, 0x2d, 0x30, 0x98, 0x90, 0x07, 0xa8, 0x70, 0x22, 0xee, 0x69, 0x46, 0x80, - 0xdf, 0xcd, 0x80, 0x63, 0xc9, 0xc4, 0x20, 0x81, 0x37, 0xfb, 0xd6, 0xbb, 0x9d, 0x81, 0xcc, 0xdd, - 0xda, 0x1b, 0x30, 0xe6, 0x83, 0xaf, 0x53, 0x1f, 0x2c, 0xc1, 0xab, 0x7d, 0xf8, 0x00, 0xdb, 0x51, - 0x17, 0xfc, 0x27, 0xa0, 0x55, 0x12, 0x59, 0x2c, 0xb8, 0x92, 0x5e, 0xf1, 0xdd, 0x48, 0xbb, 0xdc, - 0x8d, 0x81, 0x71, 0x98, 0xed, 0x4b, 0xd4, 0xf6, 0xaf, 0xc2, 0x4b, 0x29, 0x7e, 0xac, 0xe1, 0x8c, - 0x65, 0xa4, 0x61, 0x4c, 0x30, 0x39, 0xdc, 0xa5, 0xf4, 0x65, 0x72, 0x02, 0x4f, 0xd7, 0x97, 0xc9, - 0x49, 0x0c, 0x5a, 0x7f, 0x26, 0x47, 0x5e, 0x6f, 0xf8, 0x47, 0x81, 0xb5, 0xb3, 0x11, 0xf2, 0x0c, - 0xbe, 0x95, 0x5e, 0xc5, 0x24, 0x4e, 0x2e, 0x77, 0xb5, 0xef, 0xf5, 0xcc, 0xb4, 0x37, 0xa9, 0x69, - 0x8b, 0x70, 0xbe, 0xbb, 0x69, 0x2e, 0x03, 0xf0, 0x7f, 0x84, 0x81, 0xbf, 0xc8, 0xb0, 0x57, 0x71, - 0x77, 0x36, 0x0c, 0xde, 0x49, 0xaf, 0x62, 0x2a, 0x16, 0x2e, 0xb7, 0xba, 0x77, 0x80, 0x91, 0x94, - 0x76, 0x1d, 0x96, 0xbb, 0x3b, 0xc1, 0xe1, 0x88, 0xad, 0x98, 0x76, 0x28, 0xa6, 0xe2, 0xb3, 0x7b, - 0xf0, 0x5f, 0x6d, 0xec, 0x5d, 0x94, 0x4a, 0x22, 0xb0, 0x87, 0x17, 0xba, 0x03, 0x45, 0x98, 0x2b, - 0x0d, 0x02, 0xc1, 0xac, 0x2e, 0x51, 0xab, 0xbf, 0x06, 0x2f, 0x77, 0xb7, 0x3a, 0x20, 0x07, 0x95, - 0xf8, 0x33, 0xf6, 0x51, 0x86, 0xfd, 0x22, 0x95, 0x82, 0x43, 0x83, 0x6b, 0xe9, 0x95, 0x4e, 0x4f, - 0x03, 0xe6, 0xee, 0xed, 0x31, 0x2a, 0xf3, 0x4e, 0x95, 0x7a, 0x47, 0x5d, 0x5f, 0x80, 0x52, 0x77, - 0xff, 0x44, 0x0b, 0x9e, 0x0b, 0x69, 0x16, 0xf0, 0xfa, 0xe6, 0xb7, 0x02, 0x98, 0x0c, 0x51, 0x5a, - 0xf0, 0x8d, 0x1e, 0x8e, 0x36, 0x4c, 0x8d, 0xe5, 0xde, 0xec, 0x7d, 0x21, 0xb3, 0x75, 0x9e, 0xda, - 0x7a, 0x0e, 0x16, 0x52, 0x44, 0x82, 0xaf, 0xe4, 0x5f, 0x33, 0xb1, 0x92, 0x38, 0x99, 0xb7, 0xea, - 0xe5, 0xf2, 0xa7, 0xe2, 0xdb, 0x7a, 0xb9, 0xfc, 0xe9, 0x28, 0x35, 0xf1, 0x99, 0x5f, 0xec, 0xfe, - 0x48, 0x58, 0x4f, 0x95, 0x00, 0xb0, 0x07, 0xa4, 0x18, 0x96, 0xd2, 0x6a, 0x68, 0x63, 0xc7, 0x7f, - 0xad, 0x5f, 0x10, 0x1e, 0x12, 0xbf, 0xcb, 0x80, 0xb3, 0xa9, 0xdb, 0x55, 0x78, 0xaf, 0xdf, 0x3a, - 0x76, 0xd7, 0x8e, 0x3b, 0x77, 0x7f, 0xaf, 0x61, 0x99, 0xbf, 0xd7, 0xa9, 0xbb, 0xd7, 0xa0, 0xdc, - 0x73, 0xd1, 0xac, 0xd8, 0xc8, 0x69, 0x79, 0x4c, 0x7a, 0x1c, 0xef, 0x8f, 0x9f, 0xc0, 0x9f, 0x0c, - 0x83, 0xd3, 0x69, 0xba, 0x5a, 0xb8, 0x3a, 0x40, 0x35, 0x94, 0xd8, 0xce, 0xe7, 0xde, 0xdd, 0x43, - 0x44, 0xe6, 0xa9, 0x8f, 0xfc, 0xc8, 0xfc, 0x83, 0xb0, 0xbe, 0x01, 0xdf, 0xeb, 0xc5, 0x5b, 0x51, - 0xca, 0x2f, 0x1a, 0x9e, 0x49, 0x6e, 0xfb, 0xe6, 0x40, 0xe0, 0x41, 0xd8, 0x26, 0x21, 0xff, 0x3e, - 0x5e, 0xdf, 0x87, 0x72, 0x43, 0x79, 0x10, 0x66, 0x29, 0x70, 0xfb, 0xf2, 0x60, 0x20, 0xfd, 0xe5, - 0x00, 0xee, 0x8c, 0x41, 0x72, 0x40, 0x32, 0x08, 0xcf, 0x01, 0xff, 0x16, 0xd8, 0x6f, 0xb1, 0x49, - 0x9c, 0x08, 0xec, 0x81, 0x95, 0xdb, 0x85, 0x77, 0xc9, 0xad, 0x0c, 0x0a, 0xd3, 0x7b, 0x81, 0xdc, - 0x81, 0xc2, 0x81, 0xff, 0x15, 0x62, 0xff, 0x6a, 0x13, 0x25, 0x59, 0xe0, 0x8d, 0xde, 0x0f, 0x3a, - 0x91, 0xe9, 0xc9, 0xbd, 0x3d, 0x38, 0x50, 0xef, 0x56, 0x87, 0x82, 0x43, 0x7a, 0xcc, 0x89, 0xa6, - 0x27, 0xa5, 0x6f, 0x7c, 0xfc, 0x62, 0x56, 0xf8, 0xe4, 0xc5, 0xac, 0xf0, 0xf7, 0x17, 0xb3, 0xc2, - 0xb3, 0x97, 0xb3, 0x43, 0x9f, 0xbc, 0x9c, 0x1d, 0xfa, 0xf3, 0xcb, 0xd9, 0xa1, 0xf5, 0x2b, 0x55, - 0xc3, 0xdd, 0xaa, 0x6f, 0x16, 0x35, 0x5c, 0x63, 0xff, 0xb2, 0x15, 0xda, 0xe5, 0x22, 0xdf, 0xa5, - 0xf1, 0xba, 0xf4, 0x28, 0x56, 0xa6, 0x37, 0x6d, 0x44, 0x36, 0xc7, 0xe8, 0xcf, 0xe1, 0xaf, 0xfd, - 0x3f, 0x00, 0x00, 0xff, 0xff, 0x10, 0x95, 0x03, 0x85, 0x52, 0x27, 0x00, 0x00, + // 2174 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0x41, 0x6f, 0xdc, 0xc6, + 0x15, 0x16, 0x77, 0x25, 0x59, 0x1a, 0xd9, 0x72, 0x32, 0x96, 0xad, 0xf5, 0x4a, 0xd6, 0xca, 0x74, + 0x0c, 0x6c, 0x64, 0x9b, 0xd4, 0x2a, 0x48, 0x13, 0xbb, 0x70, 0x6d, 0xed, 0xca, 0x72, 0x16, 0x6e, + 0x6d, 0x85, 0x96, 0xdd, 0x42, 0x81, 0xca, 0x50, 0xe4, 0x74, 0xc5, 0x8a, 0x4b, 0x52, 0x9c, 0xd9, + 0xb5, 0x17, 0x86, 0x2f, 0xed, 0x25, 0xed, 0xa1, 0x70, 0x51, 0x14, 0xc8, 0x31, 0x97, 0x02, 0x3d, + 0xf4, 0x54, 0x04, 0x2d, 0x7a, 0xcb, 0x31, 0xb7, 0xa6, 0xc9, 0xa5, 0x68, 0x01, 0xb7, 0xb0, 0x7b, + 0xe8, 0xa5, 0x40, 0x91, 0xf6, 0x07, 0x14, 0x1c, 0xce, 0x90, 0x4b, 0x9a, 0x2b, 0x71, 0x77, 0x75, + 0xe8, 0x4d, 0x9c, 0x79, 0xef, 0x9b, 0xf7, 0xde, 0xbc, 0xf7, 0xe6, 0xbd, 0xb7, 0x02, 0xb2, 0x69, + 0x13, 0xe4, 0xe9, 0xbb, 0x9a, 0x69, 0xab, 0x18, 0xe9, 0x2d, 0xcf, 0x24, 0x1d, 0x59, 0xd7, 0xdb, + 0xb2, 0xeb, 0x39, 0x6d, 0xd3, 0x40, 0x9e, 0xdc, 0xae, 0xc8, 0xfb, 0x2d, 0xe4, 0x75, 0x24, 0xd7, + 0x73, 0x88, 0x03, 0x2f, 0xa4, 0x30, 0x48, 0xba, 0xde, 0x96, 0x38, 0x83, 0xd4, 0xae, 0x14, 0xe7, + 0x1b, 0x8e, 0xd3, 0xb0, 0x90, 0xac, 0xb9, 0xa6, 0xac, 0xd9, 0xb6, 0x43, 0x34, 0x62, 0x3a, 0x36, + 0x0e, 0x20, 0x8a, 0x33, 0x0d, 0xa7, 0xe1, 0xd0, 0x3f, 0x65, 0xff, 0x2f, 0xb6, 0x5a, 0x62, 0x3c, + 0xf4, 0x6b, 0xa7, 0xf5, 0x03, 0x99, 0x98, 0x4d, 0x84, 0x89, 0xd6, 0x74, 0x19, 0xc1, 0x4a, 0x16, + 0x51, 0x43, 0x29, 0x02, 0x9e, 0xe5, 0x5e, 0x3c, 0xed, 0x8a, 0x8c, 0x77, 0x35, 0x0f, 0x19, 0xaa, + 0xee, 0xd8, 0xb8, 0xd5, 0x0c, 0x39, 0x2e, 0x1e, 0xc0, 0xf1, 0xc8, 0xf4, 0x10, 0x23, 0x9b, 0x27, + 0xc8, 0x36, 0x90, 0xd7, 0x34, 0x6d, 0x22, 0xeb, 0x5e, 0xc7, 0x25, 0x8e, 0xbc, 0x87, 0x3a, 0x5c, + 0xc3, 0xb3, 0xba, 0x83, 0x9b, 0x0e, 0x56, 0x03, 0x25, 0x83, 0x0f, 0xb6, 0xf5, 0x46, 0xf0, 0x25, + 0x63, 0xa2, 0xed, 0x99, 0x76, 0x43, 0x6e, 0x57, 0x76, 0x10, 0xd1, 0x2a, 0xfc, 0x3b, 0xa0, 0x12, + 0xb7, 0xc1, 0xdc, 0xfb, 0xbe, 0xd1, 0x6b, 0x4c, 0xb8, 0xdb, 0xc8, 0x46, 0xd8, 0xc4, 0x0a, 0xda, + 0x6f, 0x21, 0x4c, 0xe0, 0x39, 0x30, 0x11, 0x48, 0x68, 0x1a, 0x05, 0x61, 0x51, 0x28, 0x4f, 0x56, + 0x73, 0x05, 0x41, 0x39, 0x46, 0xd7, 0xea, 0x06, 0x2c, 0x81, 0x29, 0xae, 0x95, 0x4f, 0x91, 0xf3, + 0x29, 0x14, 0xc0, 0x97, 0xea, 0x86, 0xf8, 0x04, 0xcc, 0xa7, 0xc3, 0x63, 0xd7, 0xb1, 0x31, 0x82, + 0x1f, 0x80, 0x13, 0x8d, 0x60, 0x49, 0xc5, 0x44, 0x23, 0x88, 0x1e, 0x32, 0xb5, 0xb2, 0x2c, 0xf5, + 0xba, 0xfc, 0x76, 0x45, 0x4a, 0x60, 0xdd, 0xf7, 0xf9, 0xaa, 0xa3, 0x9f, 0x3f, 0x2f, 0x8d, 0x28, + 0xc7, 0x1b, 0x5d, 0x6b, 0xe2, 0x3c, 0x28, 0xc6, 0x0e, 0xaf, 0xf9, 0x70, 0x5c, 0x35, 0x51, 0x4b, + 0x68, 0xce, 0x77, 0x99, 0x64, 0x55, 0x30, 0x4e, 0x8f, 0xc7, 0x05, 0x61, 0x31, 0x5f, 0x9e, 0x5a, + 0x59, 0x92, 0x32, 0xf8, 0xa3, 0x44, 0x41, 0x14, 0xc6, 0x29, 0x7e, 0x9c, 0x03, 0x63, 0x74, 0x05, + 0x9e, 0x4d, 0xda, 0x31, 0xb2, 0xe1, 0x1c, 0x98, 0xd4, 0x2d, 0x13, 0xd9, 0x24, 0xb2, 0xe0, 0x44, + 0xb0, 0x50, 0x37, 0xe0, 0x29, 0x30, 0x46, 0x1c, 0x57, 0xbd, 0x5b, 0xc8, 0x2f, 0x0a, 0xe5, 0x13, + 0xca, 0x28, 0x71, 0xdc, 0xbb, 0x70, 0x09, 0xc0, 0xa6, 0x69, 0xab, 0xae, 0xf3, 0xc8, 0x37, 0xbb, + 0xad, 0x06, 0x14, 0xa3, 0x8b, 0x42, 0x39, 0xaf, 0x4c, 0x37, 0x4d, 0x7b, 0xc3, 0xdf, 0xa8, 0xdb, + 0x9b, 0x3e, 0xed, 0x32, 0x98, 0x69, 0x6b, 0x96, 0x69, 0x68, 0xc4, 0xf1, 0x30, 0x63, 0xd1, 0x35, + 0xb7, 0x30, 0x46, 0xf1, 0x60, 0xb4, 0x47, 0x99, 0x6a, 0x9a, 0x0b, 0x97, 0xc0, 0xeb, 0xe1, 0xaa, + 0x8a, 0x11, 0xa1, 0xe4, 0xe3, 0x94, 0xfc, 0x64, 0xb8, 0x71, 0x1f, 0x11, 0x9f, 0x76, 0x1e, 0x4c, + 0x6a, 0x96, 0xe5, 0x3c, 0xb2, 0x4c, 0x4c, 0x0a, 0xc7, 0x16, 0xf3, 0xe5, 0x49, 0x25, 0x5a, 0x80, + 0x45, 0x30, 0x61, 0x20, 0xbb, 0x43, 0x37, 0x27, 0xe8, 0x66, 0xf8, 0x2d, 0xfe, 0x46, 0x00, 0xe7, + 0xa9, 0xf9, 0x1f, 0x72, 0x48, 0x7e, 0x0f, 0xab, 0x86, 0xe1, 0x65, 0x74, 0xbf, 0xeb, 0xe0, 0x35, + 0x6e, 0x7c, 0x55, 0x33, 0x0c, 0x0f, 0x61, 0x1c, 0x58, 0xb0, 0x0a, 0xbf, 0x7e, 0x5e, 0x9a, 0xee, + 0x68, 0x4d, 0xeb, 0x9a, 0xc8, 0x36, 0x44, 0xe5, 0x24, 0xa7, 0x5d, 0x0d, 0x56, 0x92, 0xde, 0x9b, + 0x4f, 0x7a, 0xef, 0xb5, 0x89, 0x8f, 0x3e, 0x29, 0x8d, 0xfc, 0xf3, 0x93, 0xd2, 0x88, 0x78, 0x0f, + 0x88, 0x07, 0x49, 0xcb, 0x7c, 0xe6, 0x4d, 0xf0, 0x5a, 0x08, 0xc8, 0xe5, 0x09, 0x6e, 0xfb, 0xa4, + 0xde, 0x45, 0xef, 0x4b, 0xf3, 0xaa, 0xfe, 0x1b, 0x5d, 0xd2, 0x65, 0xd7, 0xff, 0x95, 0xf3, 0x0e, + 0xd0, 0x3f, 0x21, 0xc3, 0x50, 0xfa, 0xc7, 0xa5, 0x8d, 0xf4, 0x7f, 0xe5, 0x3e, 0x98, 0xfe, 0x09, + 0xdb, 0x8b, 0x73, 0xe0, 0x2c, 0x05, 0xdc, 0xdc, 0xf5, 0x1c, 0x42, 0x2c, 0x44, 0x23, 0x96, 0x87, + 0xe6, 0x9f, 0x04, 0x16, 0xb9, 0x89, 0x5d, 0x76, 0x4c, 0x09, 0x4c, 0x61, 0x4b, 0xc3, 0xbb, 0x6a, + 0x13, 0x11, 0xe4, 0xd1, 0x13, 0xf2, 0x0a, 0xa0, 0x4b, 0xdf, 0xf1, 0x57, 0xe0, 0x0a, 0x38, 0xdd, + 0x45, 0xa0, 0x52, 0x8f, 0xd4, 0x6c, 0x1d, 0x51, 0xe3, 0xe4, 0x95, 0x53, 0x11, 0xe9, 0x2a, 0xdf, + 0x82, 0xdf, 0x07, 0x05, 0x1b, 0x3d, 0x26, 0xaa, 0x87, 0x5c, 0x0b, 0xd9, 0x26, 0xde, 0x55, 0x75, + 0xcd, 0x36, 0x7c, 0x65, 0x11, 0xb5, 0xcc, 0xd4, 0x4a, 0x51, 0x0a, 0x1e, 0x0e, 0x89, 0x3f, 0x1c, + 0xd2, 0x26, 0x7f, 0x38, 0xaa, 0x13, 0x7e, 0xfa, 0x79, 0xf6, 0xb7, 0x92, 0xa0, 0x9c, 0xf1, 0x51, + 0x14, 0x0e, 0x52, 0xe3, 0x18, 0xe2, 0x65, 0xb0, 0x44, 0x55, 0x52, 0x50, 0xc3, 0xc4, 0x04, 0x79, + 0xc8, 0xe0, 0x2e, 0xa4, 0xa0, 0x47, 0x9a, 0x67, 0xac, 0x21, 0xdb, 0x69, 0x86, 0xc9, 0xe9, 0x16, + 0xb8, 0x94, 0x89, 0x9a, 0x59, 0xe4, 0x0c, 0x18, 0x37, 0xe8, 0x0a, 0x4d, 0x56, 0x93, 0x0a, 0xfb, + 0x12, 0xf7, 0x81, 0x4c, 0x61, 0x56, 0x2d, 0x6b, 0x43, 0x33, 0x3d, 0xfc, 0x50, 0xb3, 0x6a, 0x8e, + 0xed, 0xdf, 0x41, 0x35, 0x9e, 0xf7, 0xea, 0x6b, 0x47, 0x95, 0xf1, 0x7f, 0x25, 0x80, 0xe5, 0xec, + 0x67, 0x32, 0xf9, 0xf7, 0xc1, 0xeb, 0xae, 0x66, 0x7a, 0x6a, 0x5b, 0xb3, 0xfc, 0x67, 0x92, 0x3a, + 0x0f, 0xcb, 0xbb, 0xeb, 0x99, 0xf2, 0xae, 0x7f, 0x52, 0x74, 0x50, 0xe8, 0x9c, 0x76, 0x64, 0xb6, + 0x69, 0x37, 0x46, 0x22, 0xfe, 0x57, 0x00, 0xe7, 0x0f, 0xe5, 0x82, 0xeb, 0xbd, 0x3c, 0xba, 0x3a, + 0xf7, 0xf5, 0xf3, 0xd2, 0x6c, 0x10, 0x61, 0x49, 0x8a, 0x94, 0x54, 0xb3, 0xde, 0x33, 0x52, 0xbb, + 0x70, 0x92, 0x14, 0x29, 0x21, 0x7b, 0x03, 0x1c, 0x0f, 0xa9, 0xf6, 0x50, 0x87, 0x79, 0xe6, 0xbc, + 0x14, 0x15, 0x09, 0x52, 0x50, 0x24, 0x48, 0x1b, 0xad, 0x1d, 0xcb, 0xd4, 0xef, 0xa0, 0x8e, 0x12, + 0x5e, 0xd8, 0x1d, 0xd4, 0x11, 0x67, 0x00, 0xa4, 0xb7, 0xb3, 0xa1, 0x79, 0x5a, 0xe4, 0x6e, 0x1f, + 0x82, 0x53, 0xb1, 0x55, 0x76, 0x2d, 0x75, 0x30, 0xee, 0xd2, 0x15, 0xf6, 0x2c, 0x5f, 0xca, 0x78, + 0x17, 0x3e, 0x0b, 0x7b, 0x91, 0x19, 0x80, 0x68, 0x31, 0xf7, 0x8f, 0x79, 0xc0, 0x3d, 0x97, 0x20, + 0xa3, 0x6e, 0x87, 0x49, 0xe5, 0xc8, 0xca, 0x8e, 0x7d, 0x16, 0x3e, 0x87, 0x9d, 0x16, 0xbe, 0xf5, + 0xe7, 0xba, 0x1f, 0xc9, 0xc4, 0x75, 0x22, 0x1e, 0x55, 0x73, 0x5d, 0xaf, 0x65, 0xfc, 0x7e, 0x11, + 0x16, 0x3f, 0x04, 0x0b, 0xb1, 0x23, 0x8f, 0x5e, 0xa9, 0x9f, 0x1f, 0x03, 0x8b, 0x3d, 0x8e, 0x08, + 0xff, 0x4a, 0x7d, 0x12, 0x85, 0xec, 0x4f, 0x62, 0xd2, 0xbf, 0x72, 0x7d, 0xfa, 0x17, 0x2c, 0x80, + 0x31, 0x5a, 0x64, 0x50, 0xcf, 0xcc, 0x53, 0x0d, 0x83, 0x05, 0x78, 0x15, 0x8c, 0x7a, 0x7e, 0x32, + 0x1d, 0xa5, 0xd2, 0x5c, 0xf4, 0xbd, 0xe3, 0x2f, 0xcf, 0x4b, 0x73, 0x41, 0x95, 0x8a, 0x8d, 0x3d, + 0xc9, 0x74, 0xe4, 0xa6, 0x46, 0x76, 0xa5, 0x6f, 0xa3, 0x86, 0xa6, 0x77, 0xd6, 0x90, 0x5e, 0x10, + 0x14, 0xca, 0x02, 0x2f, 0x82, 0xe9, 0x50, 0xaa, 0x00, 0x7d, 0x8c, 0x26, 0xf2, 0x13, 0x7c, 0x95, + 0x16, 0x2f, 0x70, 0x1b, 0x14, 0x42, 0x32, 0xdd, 0x69, 0x36, 0x4d, 0x8c, 0x4d, 0xc7, 0x56, 0xe9, + 0xa9, 0xe3, 0xf4, 0xd4, 0x0b, 0x19, 0x4e, 0x55, 0xce, 0x70, 0x90, 0x5a, 0x88, 0xa1, 0xf8, 0x52, + 0x6c, 0x83, 0x42, 0x68, 0xda, 0x24, 0xfc, 0xb1, 0x3e, 0xe0, 0x39, 0x48, 0x02, 0xfe, 0x0e, 0x98, + 0x32, 0x10, 0xd6, 0x3d, 0xd3, 0xf5, 0x5b, 0x98, 0xc2, 0x04, 0xb5, 0xfc, 0x05, 0x89, 0xd5, 0xf4, + 0xbc, 0x6a, 0x67, 0x55, 0xbc, 0xb4, 0x16, 0x91, 0xb2, 0x48, 0xeb, 0xe6, 0x86, 0xdb, 0xe0, 0x6c, + 0x28, 0xab, 0xe3, 0x22, 0x8f, 0x16, 0x73, 0xdc, 0x1f, 0x26, 0xa9, 0xb0, 0xe7, 0xbf, 0xfc, 0xf4, + 0xca, 0x39, 0x86, 0x1e, 0xfa, 0x0f, 0xf3, 0x83, 0xfb, 0xc4, 0x33, 0xed, 0x86, 0x32, 0xcb, 0x31, + 0xee, 0x31, 0x08, 0xee, 0x26, 0x67, 0xc0, 0xf8, 0x0f, 0x35, 0xd3, 0x42, 0x46, 0x01, 0x2c, 0x0a, + 0xe5, 0x09, 0x85, 0x7d, 0xc1, 0x6b, 0x60, 0xdc, 0x2f, 0xe3, 0x5b, 0xb8, 0x30, 0xb5, 0x28, 0x94, + 0xa7, 0x57, 0xc4, 0x5e, 0xe2, 0x57, 0x1d, 0xdb, 0xb8, 0x4f, 0x29, 0x15, 0xc6, 0x01, 0x37, 0x41, + 0xe8, 0x8d, 0x2a, 0x71, 0xf6, 0x90, 0x8d, 0x0b, 0xc7, 0xa9, 0xa0, 0x97, 0x98, 0x55, 0x4f, 0xbf, + 0x6a, 0xd5, 0xba, 0x4d, 0xbe, 0xfc, 0xf4, 0x0a, 0x60, 0x87, 0xd4, 0x6d, 0xa2, 0x4c, 0x73, 0x8c, + 0x4d, 0x0a, 0xe1, 0xbb, 0x4e, 0x88, 0x1a, 0xb8, 0xce, 0x89, 0xc0, 0x75, 0xf8, 0x6a, 0xe0, 0x3a, + 0xdf, 0x00, 0xb3, 0x2c, 0xb8, 0x11, 0x56, 0xf5, 0x96, 0xe7, 0xf9, 0xf5, 0x38, 0x72, 0x1d, 0x7d, + 0xb7, 0x30, 0x4d, 0x35, 0x3c, 0x1d, 0x6e, 0xd7, 0x82, 0xdd, 0x5b, 0xfe, 0xa6, 0xf8, 0x91, 0x00, + 0x4a, 0x3d, 0xc3, 0x9e, 0x65, 0x17, 0x04, 0x40, 0x94, 0x38, 0xd8, 0xab, 0x76, 0x2b, 0x53, 0x26, + 0x3d, 0x2c, 0xda, 0x95, 0x2e, 0x60, 0x71, 0x9f, 0xbd, 0xbb, 0xf1, 0x7e, 0x26, 0xa4, 0x7d, 0x4f, + 0xc3, 0x9b, 0x0e, 0xfb, 0xe2, 0x85, 0xd6, 0x90, 0xd9, 0x42, 0xd4, 0x40, 0xa5, 0x8f, 0x23, 0x99, + 0x39, 0x2e, 0x03, 0x18, 0x45, 0x29, 0xcb, 0x87, 0x3c, 0xc3, 0x86, 0x8f, 0x64, 0x50, 0x20, 0x18, + 0xb4, 0x4e, 0xbe, 0x94, 0x5e, 0x79, 0xc7, 0xc3, 0xe7, 0xff, 0xa3, 0x63, 0x10, 0x1b, 0xe0, 0x72, + 0x36, 0x69, 0x99, 0x31, 0xde, 0x61, 0x49, 0x51, 0xc8, 0x9e, 0x3f, 0x28, 0x83, 0x28, 0xb2, 0xb7, + 0xa0, 0x6a, 0x39, 0xfa, 0x1e, 0x7e, 0x60, 0x13, 0xd3, 0xba, 0x8b, 0x1e, 0x07, 0x5e, 0xc9, 0x5f, + 0xf5, 0x2d, 0xd6, 0x62, 0xa4, 0xd3, 0x30, 0x09, 0xde, 0x06, 0xb3, 0x3b, 0x74, 0x5f, 0x6d, 0xf9, + 0x04, 0x2a, 0x2d, 0x82, 0x03, 0xcf, 0xf7, 0x85, 0x1a, 0x55, 0x66, 0x76, 0x52, 0xd8, 0xc5, 0x55, + 0xd6, 0x10, 0xd4, 0x42, 0xdd, 0xd7, 0x3d, 0xa7, 0x59, 0x63, 0x7d, 0x2b, 0xbf, 0x8d, 0x58, 0x6f, + 0x2b, 0xc4, 0x7b, 0x5b, 0x71, 0x1d, 0x5c, 0x38, 0x10, 0x22, 0xaa, 0xf6, 0xbb, 0x6d, 0x2e, 0x24, + 0x6d, 0xbe, 0xf2, 0xf1, 0x02, 0x18, 0xa3, 0x40, 0xf0, 0xd7, 0x39, 0x30, 0x93, 0x36, 0x6e, 0x80, + 0x37, 0xfb, 0x0f, 0xb7, 0xf8, 0x20, 0xa4, 0xb8, 0x3a, 0x04, 0x42, 0xa0, 0x88, 0xf8, 0x53, 0xe1, + 0x47, 0x5f, 0xfd, 0xe3, 0x17, 0xb9, 0x1f, 0x0b, 0x5b, 0x55, 0x78, 0xf3, 0xf0, 0x71, 0x58, 0xa8, + 0x34, 0x9b, 0x69, 0xc8, 0x4f, 0xba, 0xcc, 0xf0, 0x14, 0x5e, 0x1f, 0x08, 0x81, 0x85, 0xc6, 0x53, + 0xf8, 0x95, 0xc0, 0x4a, 0xbe, 0x78, 0xec, 0xc2, 0x1b, 0xfd, 0xeb, 0x19, 0x1b, 0xab, 0x14, 0x6f, + 0x0e, 0x0e, 0xc0, 0xec, 0x74, 0x95, 0x9a, 0xe9, 0x2d, 0x58, 0xe9, 0x43, 0xc3, 0x60, 0xe0, 0x02, + 0xff, 0xcd, 0x1b, 0xc7, 0xd4, 0x3e, 0x1d, 0xae, 0x67, 0x97, 0xed, 0xa0, 0xb1, 0x44, 0xf1, 0xf6, + 0xd0, 0x38, 0x4c, 0xd5, 0x55, 0xaa, 0xea, 0x37, 0xe1, 0xd5, 0x0c, 0xd3, 0xd1, 0x70, 0x26, 0x13, + 0x6b, 0x13, 0x52, 0x54, 0xee, 0xae, 0x4d, 0x07, 0x52, 0x39, 0x65, 0x12, 0x31, 0x90, 0xca, 0x69, + 0x33, 0x82, 0xc1, 0x54, 0x8e, 0xe5, 0x6c, 0xf8, 0x47, 0x81, 0x35, 0x31, 0xb1, 0xf1, 0x00, 0xfc, + 0x56, 0x76, 0x11, 0xd3, 0xa6, 0x0e, 0xc5, 0x1b, 0x03, 0xf3, 0x33, 0xd5, 0xde, 0xa5, 0xaa, 0xad, + 0xc0, 0xe5, 0xc3, 0x55, 0x23, 0x0c, 0x20, 0x98, 0x7a, 0xc2, 0x5f, 0xe6, 0x58, 0x2e, 0x3c, 0xb8, + 0xdf, 0x87, 0xf7, 0xb2, 0x8b, 0x98, 0x69, 0xce, 0x50, 0xdc, 0x38, 0x3a, 0x40, 0x66, 0x84, 0x3b, + 0xd4, 0x08, 0xb7, 0x60, 0xed, 0x70, 0x23, 0x78, 0x21, 0x62, 0xe4, 0xd3, 0x1e, 0xc5, 0x54, 0x83, + 0xf9, 0x05, 0xfc, 0x2c, 0x07, 0xca, 0x59, 0x87, 0x09, 0x70, 0x33, 0xbb, 0x2e, 0xd9, 0xe7, 0x21, + 0xc5, 0x07, 0x47, 0x8c, 0xca, 0xcc, 0xd4, 0xa0, 0x66, 0xd2, 0xb6, 0x2a, 0x50, 0x3e, 0xdc, 0x50, + 0xf1, 0xcc, 0x7f, 0x39, 0x0b, 0x43, 0x98, 0xe8, 0x7f, 0x2b, 0x80, 0xa9, 0xae, 0xde, 0x1e, 0xbe, + 0x93, 0x5d, 0x9f, 0xd8, 0x8c, 0xa0, 0xf8, 0x6e, 0xff, 0x8c, 0x4c, 0xd7, 0x65, 0xaa, 0xeb, 0x12, + 0x2c, 0x1f, 0x2e, 0x78, 0x30, 0x2d, 0x80, 0x7f, 0xcd, 0x25, 0x6a, 0x83, 0xf4, 0x06, 0xbe, 0x9f, + 0x78, 0xc8, 0x34, 0x78, 0xe8, 0x27, 0x1e, 0xb2, 0xcd, 0x16, 0xc4, 0x67, 0xc1, 0xab, 0xff, 0x13, + 0x61, 0x2b, 0x53, 0x4c, 0x38, 0x3e, 0x90, 0x6a, 0xda, 0x6a, 0x54, 0xd9, 0x27, 0xae, 0xff, 0xe6, + 0xa0, 0x20, 0xa1, 0x4b, 0xfc, 0x2e, 0x07, 0xde, 0xcc, 0x5c, 0xb7, 0xc3, 0x07, 0x83, 0x3e, 0xe8, + 0x07, 0xb6, 0x1e, 0xc5, 0x87, 0x47, 0x0d, 0xcb, 0xec, 0xbd, 0x45, 0xcd, 0xbd, 0x09, 0x95, 0xbe, + 0xab, 0x07, 0xd5, 0x45, 0x5e, 0x64, 0x31, 0xf9, 0x49, 0xb2, 0x51, 0x78, 0x0a, 0x7f, 0x96, 0x07, + 0x6f, 0x64, 0x29, 0xef, 0xe1, 0xc6, 0x10, 0x05, 0x42, 0x6a, 0x5f, 0x53, 0x7c, 0xff, 0x08, 0x11, + 0x99, 0xa5, 0x3e, 0x0b, 0x3c, 0xf3, 0x0f, 0xc2, 0xd6, 0x36, 0xfc, 0xa0, 0x1f, 0x6b, 0xc5, 0x67, + 0x1f, 0x71, 0xf7, 0x4c, 0x33, 0xdb, 0xf7, 0x86, 0x02, 0xe7, 0x6e, 0x9b, 0x86, 0xfc, 0xfb, 0x1c, + 0x98, 0xed, 0xd1, 0x24, 0xc3, 0xda, 0x30, 0x2d, 0x36, 0x37, 0xfb, 0xda, 0x70, 0x20, 0x83, 0xe5, + 0x80, 0xd0, 0x18, 0xc3, 0xe4, 0x80, 0x74, 0x90, 0x30, 0x07, 0xfc, 0x4b, 0x60, 0x3f, 0xc0, 0xa4, + 0x35, 0x87, 0xb0, 0x8f, 0xf1, 0xc4, 0x01, 0x0d, 0x68, 0x71, 0x7d, 0x58, 0x98, 0xfe, 0x6b, 0xc6, + 0x1e, 0xbd, 0x2c, 0xfc, 0x8f, 0x90, 0xf8, 0xb9, 0x37, 0xde, 0x6d, 0xc2, 0xdb, 0xfd, 0x5f, 0x74, + 0x6a, 0xcb, 0x5b, 0x7c, 0x6f, 0x78, 0xa0, 0xfe, 0xb5, 0xee, 0x72, 0x0e, 0xf9, 0x49, 0xd8, 0x71, + 0x3f, 0xad, 0x7e, 0xf7, 0xf3, 0x17, 0x0b, 0xc2, 0x17, 0x2f, 0x16, 0x84, 0xbf, 0xbf, 0x58, 0x10, + 0x9e, 0xbd, 0x5c, 0x18, 0xf9, 0xe2, 0xe5, 0xc2, 0xc8, 0x9f, 0x5f, 0x2e, 0x8c, 0x6c, 0x5d, 0x6f, + 0x98, 0x64, 0xb7, 0xb5, 0x23, 0xe9, 0x4e, 0x93, 0xfd, 0xdb, 0x40, 0xd7, 0x29, 0x57, 0xc2, 0x53, + 0xda, 0x6f, 0xcb, 0x8f, 0x13, 0x95, 0x6b, 0xc7, 0x45, 0x78, 0x67, 0x9c, 0xfe, 0x06, 0xf6, 0xd6, + 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0xfc, 0x07, 0xa5, 0x26, 0xd6, 0x21, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2186,8 +1851,6 @@ type QueryClient interface { // ConsumerChains queries active consumer chains supported by the provider // chain QueryConsumerChains(ctx context.Context, in *QueryConsumerChainsRequest, opts ...grpc.CallOption) (*QueryConsumerChainsResponse, error) - QueryConsumerChainStarts(ctx context.Context, in *QueryConsumerChainStartProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStartProposalsResponse, error) - QueryConsumerChainStops(ctx context.Context, in *QueryConsumerChainStopProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStopProposalsResponse, error) // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. QueryValidatorConsumerAddr(ctx context.Context, in *QueryValidatorConsumerAddrRequest, opts ...grpc.CallOption) (*QueryValidatorConsumerAddrResponse, error) @@ -2200,9 +1863,6 @@ type QueryClient interface { // QueryRegisteredConsumerRewardDenoms returns a list of consumer reward // denoms that are registered QueryRegisteredConsumerRewardDenoms(ctx context.Context, in *QueryRegisteredConsumerRewardDenomsRequest, opts ...grpc.CallOption) (*QueryRegisteredConsumerRewardDenomsResponse, error) - // QueryProposedConsumerChainIDs returns the chain IDs of the proposed consumer chain addition proposals - // that are still in the voting period - QueryProposedConsumerChainIDs(ctx context.Context, in *QueryProposedChainIDsRequest, opts ...grpc.CallOption) (*QueryProposedChainIDsResponse, error) // QueryAllPairsValConAddrByConsumerChainID returns a list of pair valconsensus address // between provider and consumer chain QueryAllPairsValConAddrByConsumerChainID(ctx context.Context, in *QueryAllPairsValConAddrByConsumerChainIDRequest, opts ...grpc.CallOption) (*QueryAllPairsValConAddrByConsumerChainIDResponse, error) @@ -2255,26 +1915,6 @@ func (c *queryClient) QueryConsumerChains(ctx context.Context, in *QueryConsumer return out, nil } -// Deprecated: Do not use. -func (c *queryClient) QueryConsumerChainStarts(ctx context.Context, in *QueryConsumerChainStartProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStartProposalsResponse, error) { - out := new(QueryConsumerChainStartProposalsResponse) - err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumerChainStarts", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// Deprecated: Do not use. -func (c *queryClient) QueryConsumerChainStops(ctx context.Context, in *QueryConsumerChainStopProposalsRequest, opts ...grpc.CallOption) (*QueryConsumerChainStopProposalsResponse, error) { - out := new(QueryConsumerChainStopProposalsResponse) - err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryConsumerChainStops", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *queryClient) QueryValidatorConsumerAddr(ctx context.Context, in *QueryValidatorConsumerAddrRequest, opts ...grpc.CallOption) (*QueryValidatorConsumerAddrResponse, error) { out := new(QueryValidatorConsumerAddrResponse) err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryValidatorConsumerAddr", in, out, opts...) @@ -2311,15 +1951,6 @@ func (c *queryClient) QueryRegisteredConsumerRewardDenoms(ctx context.Context, i return out, nil } -func (c *queryClient) QueryProposedConsumerChainIDs(ctx context.Context, in *QueryProposedChainIDsRequest, opts ...grpc.CallOption) (*QueryProposedChainIDsResponse, error) { - out := new(QueryProposedChainIDsResponse) - err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryProposedConsumerChainIDs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *queryClient) QueryAllPairsValConAddrByConsumerChainID(ctx context.Context, in *QueryAllPairsValConAddrByConsumerChainIDRequest, opts ...grpc.CallOption) (*QueryAllPairsValConAddrByConsumerChainIDResponse, error) { out := new(QueryAllPairsValConAddrByConsumerChainIDResponse) err := c.cc.Invoke(ctx, "/interchain_security.ccv.provider.v1.Query/QueryAllPairsValConAddrByConsumerChainID", in, out, opts...) @@ -2400,8 +2031,6 @@ type QueryServer interface { // ConsumerChains queries active consumer chains supported by the provider // chain QueryConsumerChains(context.Context, *QueryConsumerChainsRequest) (*QueryConsumerChainsResponse, error) - QueryConsumerChainStarts(context.Context, *QueryConsumerChainStartProposalsRequest) (*QueryConsumerChainStartProposalsResponse, error) - QueryConsumerChainStops(context.Context, *QueryConsumerChainStopProposalsRequest) (*QueryConsumerChainStopProposalsResponse, error) // QueryValidatorConsumerAddr queries the address // assigned by a validator for a consumer chain. QueryValidatorConsumerAddr(context.Context, *QueryValidatorConsumerAddrRequest) (*QueryValidatorConsumerAddrResponse, error) @@ -2414,9 +2043,6 @@ type QueryServer interface { // QueryRegisteredConsumerRewardDenoms returns a list of consumer reward // denoms that are registered QueryRegisteredConsumerRewardDenoms(context.Context, *QueryRegisteredConsumerRewardDenomsRequest) (*QueryRegisteredConsumerRewardDenomsResponse, error) - // QueryProposedConsumerChainIDs returns the chain IDs of the proposed consumer chain addition proposals - // that are still in the voting period - QueryProposedConsumerChainIDs(context.Context, *QueryProposedChainIDsRequest) (*QueryProposedChainIDsResponse, error) // QueryAllPairsValConAddrByConsumerChainID returns a list of pair valconsensus address // between provider and consumer chain QueryAllPairsValConAddrByConsumerChainID(context.Context, *QueryAllPairsValConAddrByConsumerChainIDRequest) (*QueryAllPairsValConAddrByConsumerChainIDResponse, error) @@ -2453,12 +2079,6 @@ func (*UnimplementedQueryServer) QueryConsumerGenesis(ctx context.Context, req * func (*UnimplementedQueryServer) QueryConsumerChains(ctx context.Context, req *QueryConsumerChainsRequest) (*QueryConsumerChainsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryConsumerChains not implemented") } -func (*UnimplementedQueryServer) QueryConsumerChainStarts(ctx context.Context, req *QueryConsumerChainStartProposalsRequest) (*QueryConsumerChainStartProposalsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryConsumerChainStarts not implemented") -} -func (*UnimplementedQueryServer) QueryConsumerChainStops(ctx context.Context, req *QueryConsumerChainStopProposalsRequest) (*QueryConsumerChainStopProposalsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryConsumerChainStops not implemented") -} func (*UnimplementedQueryServer) QueryValidatorConsumerAddr(ctx context.Context, req *QueryValidatorConsumerAddrRequest) (*QueryValidatorConsumerAddrResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryValidatorConsumerAddr not implemented") } @@ -2471,9 +2091,6 @@ func (*UnimplementedQueryServer) QueryThrottleState(ctx context.Context, req *Qu func (*UnimplementedQueryServer) QueryRegisteredConsumerRewardDenoms(ctx context.Context, req *QueryRegisteredConsumerRewardDenomsRequest) (*QueryRegisteredConsumerRewardDenomsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryRegisteredConsumerRewardDenoms not implemented") } -func (*UnimplementedQueryServer) QueryProposedConsumerChainIDs(ctx context.Context, req *QueryProposedChainIDsRequest) (*QueryProposedChainIDsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryProposedConsumerChainIDs not implemented") -} func (*UnimplementedQueryServer) QueryAllPairsValConAddrByConsumerChainID(ctx context.Context, req *QueryAllPairsValConAddrByConsumerChainIDRequest) (*QueryAllPairsValConAddrByConsumerChainIDResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryAllPairsValConAddrByConsumerChainID not implemented") } @@ -2539,42 +2156,6 @@ func _Query_QueryConsumerChains_Handler(srv interface{}, ctx context.Context, de return interceptor(ctx, in, info, handler) } -func _Query_QueryConsumerChainStarts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryConsumerChainStartProposalsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).QueryConsumerChainStarts(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/interchain_security.ccv.provider.v1.Query/QueryConsumerChainStarts", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).QueryConsumerChainStarts(ctx, req.(*QueryConsumerChainStartProposalsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _Query_QueryConsumerChainStops_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryConsumerChainStopProposalsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).QueryConsumerChainStops(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/interchain_security.ccv.provider.v1.Query/QueryConsumerChainStops", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).QueryConsumerChainStops(ctx, req.(*QueryConsumerChainStopProposalsRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _Query_QueryValidatorConsumerAddr_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryValidatorConsumerAddrRequest) if err := dec(in); err != nil { @@ -2647,24 +2228,6 @@ func _Query_QueryRegisteredConsumerRewardDenoms_Handler(srv interface{}, ctx con return interceptor(ctx, in, info, handler) } -func _Query_QueryProposedConsumerChainIDs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryProposedChainIDsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(QueryServer).QueryProposedConsumerChainIDs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/interchain_security.ccv.provider.v1.Query/QueryProposedConsumerChainIDs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).QueryProposedConsumerChainIDs(ctx, req.(*QueryProposedChainIDsRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _Query_QueryAllPairsValConAddrByConsumerChainID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(QueryAllPairsValConAddrByConsumerChainIDRequest) if err := dec(in); err != nil { @@ -2821,14 +2384,6 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "QueryConsumerChains", Handler: _Query_QueryConsumerChains_Handler, }, - { - MethodName: "QueryConsumerChainStarts", - Handler: _Query_QueryConsumerChainStarts_Handler, - }, - { - MethodName: "QueryConsumerChainStops", - Handler: _Query_QueryConsumerChainStops_Handler, - }, { MethodName: "QueryValidatorConsumerAddr", Handler: _Query_QueryValidatorConsumerAddr_Handler, @@ -2845,10 +2400,6 @@ var _Query_serviceDesc = grpc.ServiceDesc{ MethodName: "QueryRegisteredConsumerRewardDenoms", Handler: _Query_QueryRegisteredConsumerRewardDenoms_Handler, }, - { - MethodName: "QueryProposedConsumerChainIDs", - Handler: _Query_QueryProposedConsumerChainIDs_Handler, - }, { MethodName: "QueryAllPairsValConAddrByConsumerChainID", Handler: _Query_QueryAllPairsValConAddrByConsumerChainID_Handler, @@ -3016,122 +2567,6 @@ func (m *QueryConsumerChainsResponse) MarshalToSizedBuffer(dAtA []byte) (int, er return len(dAtA) - i, nil } -func (m *QueryConsumerChainStartProposalsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryConsumerChainStartProposalsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryConsumerChainStartProposalsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *QueryConsumerChainStartProposalsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryConsumerChainStartProposalsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryConsumerChainStartProposalsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Proposals != nil { - { - size, err := m.Proposals.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *QueryConsumerChainStopProposalsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryConsumerChainStopProposalsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryConsumerChainStopProposalsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *QueryConsumerChainStopProposalsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryConsumerChainStopProposalsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryConsumerChainStopProposalsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Proposals != nil { - { - size, err := m.Proposals.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func (m *Chain) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -3398,12 +2833,12 @@ func (m *QueryThrottleStateResponse) MarshalToSizedBuffer(dAtA []byte) (int, err _ = i var l int _ = l - n4, err4 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(m.NextReplenishCandidate, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(m.NextReplenishCandidate):]) - if err4 != nil { - return 0, err4 + n2, err2 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(m.NextReplenishCandidate, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(m.NextReplenishCandidate):]) + if err2 != nil { + return 0, err2 } - i -= n4 - i = encodeVarintQuery(dAtA, i, uint64(n4)) + i -= n2 + i = encodeVarintQuery(dAtA, i, uint64(n2)) i-- dAtA[i] = 0x1a if m.SlashMeterAllowance != 0 { @@ -3474,108 +2909,6 @@ func (m *QueryRegisteredConsumerRewardDenomsResponse) MarshalToSizedBuffer(dAtA return len(dAtA) - i, nil } -func (m *QueryProposedChainIDsRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryProposedChainIDsRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryProposedChainIDsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *QueryProposedChainIDsResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *QueryProposedChainIDsResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryProposedChainIDsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ProposedChains) > 0 { - for iNdEx := len(m.ProposedChains) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.ProposedChains[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintQuery(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - -func (m *ProposedChain) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ProposedChain) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ProposedChain) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ConsumerId) > 0 { - i -= len(m.ConsumerId) - copy(dAtA[i:], m.ConsumerId) - i = encodeVarintQuery(dAtA, i, uint64(len(m.ConsumerId))) - i-- - dAtA[i] = 0x1a - } - if m.ProposalID != 0 { - i = encodeVarintQuery(dAtA, i, uint64(m.ProposalID)) - i-- - dAtA[i] = 0x10 - } - if len(m.ChainID) > 0 { - i -= len(m.ChainID) - copy(dAtA[i:], m.ChainID) - i = encodeVarintQuery(dAtA, i, uint64(len(m.ChainID))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4350,63 +3683,19 @@ func (m *QueryConsumerChainsResponse) Size() (n int) { return n } -func (m *QueryConsumerChainStartProposalsRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *QueryConsumerChainStartProposalsResponse) Size() (n int) { +func (m *Chain) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.Proposals != nil { - l = m.Proposals.Size() + l = len(m.ChainId) + if l > 0 { n += 1 + l + sovQuery(uint64(l)) } - return n -} - -func (m *QueryConsumerChainStopProposalsRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *QueryConsumerChainStopProposalsResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Proposals != nil { - l = m.Proposals.Size() - n += 1 + l + sovQuery(uint64(l)) - } - return n -} - -func (m *Chain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ChainId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - l = len(m.ClientId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) + l = len(m.ClientId) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) } if m.Top_N != 0 { n += 1 + sovQuery(uint64(m.Top_N)) @@ -4553,50 +3842,6 @@ func (m *QueryRegisteredConsumerRewardDenomsResponse) Size() (n int) { return n } -func (m *QueryProposedChainIDsRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *QueryProposedChainIDsResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.ProposedChains) > 0 { - for _, e := range m.ProposedChains { - l = e.Size() - n += 1 + l + sovQuery(uint64(l)) - } - } - return n -} - -func (m *ProposedChain) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ChainID) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - if m.ProposalID != 0 { - n += 1 + sovQuery(uint64(m.ProposalID)) - } - l = len(m.ConsumerId) - if l > 0 { - n += 1 + l + sovQuery(uint64(l)) - } - return n -} - func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) Size() (n int) { if m == nil { return 0 @@ -5166,285 +4411,15 @@ func (m *QueryConsumerChainsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: QueryConsumerChainsResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumerChainsResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Chains", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Chains = append(m.Chains, &Chain{}) - if err := m.Chains[len(m.Chains)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryConsumerChainStartProposalsRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumerChainStartProposalsRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumerChainStartProposalsRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryConsumerChainStartProposalsResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumerChainStartProposalsResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumerChainStartProposalsResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Proposals", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Proposals == nil { - m.Proposals = &ConsumerAdditionProposals{} - } - if err := m.Proposals.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryConsumerChainStopProposalsRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumerChainStopProposalsRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumerChainStopProposalsRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryConsumerChainStopProposalsResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryConsumerChainStopProposalsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryConsumerChainsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: QueryConsumerChainStopProposalsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryConsumerChainsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Proposals", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Chains", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -5471,10 +4446,8 @@ func (m *QueryConsumerChainStopProposalsResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Proposals == nil { - m.Proposals = &ConsumerRemovalProposals{} - } - if err := m.Proposals.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + m.Chains = append(m.Chains, &Chain{}) + if err := m.Chains[len(m.Chains)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -6512,273 +5485,6 @@ func (m *QueryRegisteredConsumerRewardDenomsResponse) Unmarshal(dAtA []byte) err } return nil } -func (m *QueryProposedChainIDsRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryProposedChainIDsRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryProposedChainIDsRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryProposedChainIDsResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: QueryProposedChainIDsResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryProposedChainIDsResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProposedChains", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ProposedChains = append(m.ProposedChains, ProposedChain{}) - if err := m.ProposedChains[len(m.ProposedChains)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ProposedChain) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ProposedChain: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ProposedChain: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainID", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainID = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ProposalID", wireType) - } - m.ProposalID = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.ProposalID |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConsumerId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowQuery - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthQuery - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthQuery - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ConsumerId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipQuery(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthQuery - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *QueryAllPairsValConAddrByConsumerChainIDRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/ccv/provider/types/query.pb.gw.go b/x/ccv/provider/types/query.pb.gw.go index a533712da9..65c3f61076 100644 --- a/x/ccv/provider/types/query.pb.gw.go +++ b/x/ccv/provider/types/query.pb.gw.go @@ -195,42 +195,6 @@ func local_request_Query_QueryConsumerChains_0(ctx context.Context, marshaler ru } -func request_Query_QueryConsumerChainStarts_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumerChainStartProposalsRequest - var metadata runtime.ServerMetadata - - msg, err := client.QueryConsumerChainStarts(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_QueryConsumerChainStarts_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumerChainStartProposalsRequest - var metadata runtime.ServerMetadata - - msg, err := server.QueryConsumerChainStarts(ctx, &protoReq) - return msg, metadata, err - -} - -func request_Query_QueryConsumerChainStops_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumerChainStopProposalsRequest - var metadata runtime.ServerMetadata - - msg, err := client.QueryConsumerChainStops(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_QueryConsumerChainStops_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryConsumerChainStopProposalsRequest - var metadata runtime.ServerMetadata - - msg, err := server.QueryConsumerChainStops(ctx, &protoReq) - return msg, metadata, err - -} - var ( filter_Query_QueryValidatorConsumerAddr_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)} ) @@ -339,24 +303,6 @@ func local_request_Query_QueryRegisteredConsumerRewardDenoms_0(ctx context.Conte } -func request_Query_QueryProposedConsumerChainIDs_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryProposedChainIDsRequest - var metadata runtime.ServerMetadata - - msg, err := client.QueryProposedConsumerChainIDs(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err - -} - -func local_request_Query_QueryProposedConsumerChainIDs_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq QueryProposedChainIDsRequest - var metadata runtime.ServerMetadata - - msg, err := server.QueryProposedConsumerChainIDs(ctx, &protoReq) - return msg, metadata, err - -} - var ( filter_Query_QueryAllPairsValConAddrByConsumerChainID_0 = &utilities.DoubleArray{Encoding: map[string]int{"chain_id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} ) @@ -1196,52 +1142,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_QueryConsumerChainStarts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_QueryConsumerChainStarts_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumerChainStarts_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("GET", pattern_Query_QueryConsumerChainStops_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_QueryConsumerChainStops_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumerChainStops_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryValidatorConsumerAddr_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1334,29 +1234,6 @@ func RegisterQueryHandlerServer(ctx context.Context, mux *runtime.ServeMux, serv }) - mux.Handle("GET", pattern_Query_QueryProposedConsumerChainIDs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_Query_QueryProposedConsumerChainIDs_0(rctx, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryProposedConsumerChainIDs_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryAllPairsValConAddrByConsumerChainID_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1734,46 +1611,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_QueryConsumerChainStarts_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_QueryConsumerChainStarts_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumerChainStarts_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - - mux.Handle("GET", pattern_Query_QueryConsumerChainStops_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_QueryConsumerChainStops_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryConsumerChainStops_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryValidatorConsumerAddr_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1854,26 +1691,6 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie }) - mux.Handle("GET", pattern_Query_QueryProposedConsumerChainIDs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - rctx, err := runtime.AnnotateContext(ctx, mux, req) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_Query_QueryProposedConsumerChainIDs_0(rctx, inboundMarshaler, client, req, pathParams) - ctx = runtime.NewServerMetadataContext(ctx, md) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - - forward_Query_QueryProposedConsumerChainIDs_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - - }) - mux.Handle("GET", pattern_Query_QueryAllPairsValConAddrByConsumerChainID_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -2124,10 +1941,6 @@ var ( pattern_Query_QueryConsumerChains_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumer_chains"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryConsumerChainStarts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumer_chain_start_proposals"}, "", runtime.AssumeColonVerbOpt(false))) - - pattern_Query_QueryConsumerChainStops_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "consumer_chain_stop_proposals"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryValidatorConsumerAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "validator_consumer_addr"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_QueryValidatorProviderAddr_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "validator_provider_addr"}, "", runtime.AssumeColonVerbOpt(false))) @@ -2136,8 +1949,6 @@ var ( pattern_Query_QueryRegisteredConsumerRewardDenoms_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "registered_consumer_reward_denoms"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryProposedConsumerChainIDs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"interchain_security", "ccv", "provider", "proposed_consumer_chains"}, "", runtime.AssumeColonVerbOpt(false))) - pattern_Query_QueryAllPairsValConAddrByConsumerChainID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"interchain_security", "ccv", "provider", "chain_id"}, "", runtime.AssumeColonVerbOpt(false))) pattern_Query_QueryAllPairsValConAddrByConsumerChainID_1 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"interchain_security", "ccv", "provider", "consumer_id"}, "", runtime.AssumeColonVerbOpt(false))) @@ -2170,10 +1981,6 @@ var ( forward_Query_QueryConsumerChains_0 = runtime.ForwardResponseMessage - forward_Query_QueryConsumerChainStarts_0 = runtime.ForwardResponseMessage - - forward_Query_QueryConsumerChainStops_0 = runtime.ForwardResponseMessage - forward_Query_QueryValidatorConsumerAddr_0 = runtime.ForwardResponseMessage forward_Query_QueryValidatorProviderAddr_0 = runtime.ForwardResponseMessage @@ -2182,8 +1989,6 @@ var ( forward_Query_QueryRegisteredConsumerRewardDenoms_0 = runtime.ForwardResponseMessage - forward_Query_QueryProposedConsumerChainIDs_0 = runtime.ForwardResponseMessage - forward_Query_QueryAllPairsValConAddrByConsumerChainID_0 = runtime.ForwardResponseMessage forward_Query_QueryAllPairsValConAddrByConsumerChainID_1 = runtime.ForwardResponseMessage