mirror of
				https://github.com/0glabs/0g-chain.git
				synced 2025-11-04 08:37:29 +00:00 
			
		
		
		
	rebase to kava cosmos 0.47 upgrade
rename rename tidy clean code
This commit is contained in:
		
							parent
							
								
									14ca626365
								
							
						
					
					
						commit
						c949c06fce
					
				
							
								
								
									
										158
									
								
								app/app.go
									
									
									
									
									
								
							
							
						
						
									
										158
									
								
								app/app.go
									
									
									
									
									
								
							@ -5,7 +5,6 @@ import (
 | 
			
		||||
	"io"
 | 
			
		||||
	"net/http"
 | 
			
		||||
 | 
			
		||||
	sdkmath "cosmossdk.io/math"
 | 
			
		||||
	dbm "github.com/cometbft/cometbft-db"
 | 
			
		||||
	abci "github.com/cometbft/cometbft/abci/types"
 | 
			
		||||
	tmjson "github.com/cometbft/cometbft/libs/json"
 | 
			
		||||
@ -103,11 +102,6 @@ import (
 | 
			
		||||
	feemarkettypes "github.com/evmos/ethermint/x/feemarket/types"
 | 
			
		||||
	"github.com/gorilla/mux"
 | 
			
		||||
 | 
			
		||||
	abci "github.com/tendermint/tendermint/abci/types"
 | 
			
		||||
	tmjson "github.com/tendermint/tendermint/libs/json"
 | 
			
		||||
	tmlog "github.com/tendermint/tendermint/libs/log"
 | 
			
		||||
	dbm "github.com/tendermint/tm-db"
 | 
			
		||||
 | 
			
		||||
	"github.com/0glabs/0g-chain/app/ante"
 | 
			
		||||
	chainparams "github.com/0glabs/0g-chain/app/params"
 | 
			
		||||
	"github.com/0glabs/0g-chain/chaincfg"
 | 
			
		||||
@ -183,6 +177,7 @@ var (
 | 
			
		||||
		mint.AppModuleBasic{},
 | 
			
		||||
		council.AppModuleBasic{},
 | 
			
		||||
		dasigners.AppModuleBasic{},
 | 
			
		||||
		consensus.AppModuleBasic{},
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	// module account permissions
 | 
			
		||||
@ -259,22 +254,14 @@ type App struct {
 | 
			
		||||
	upgradeKeeper         upgradekeeper.Keeper
 | 
			
		||||
	evidenceKeeper        evidencekeeper.Keeper
 | 
			
		||||
	transferKeeper        ibctransferkeeper.Keeper
 | 
			
		||||
	kavadistKeeper        kavadistkeeper.Keeper
 | 
			
		||||
	auctionKeeper         auctionkeeper.Keeper
 | 
			
		||||
	CouncilKeeper         councilkeeper.Keeper
 | 
			
		||||
	issuanceKeeper        issuancekeeper.Keeper
 | 
			
		||||
	bep3Keeper            bep3keeper.Keeper
 | 
			
		||||
	pricefeedKeeper       pricefeedkeeper.Keeper
 | 
			
		||||
	swapKeeper            swapkeeper.Keeper
 | 
			
		||||
	cdpKeeper             cdpkeeper.Keeper
 | 
			
		||||
	hardKeeper            hardkeeper.Keeper
 | 
			
		||||
	committeeKeeper       committeekeeper.Keeper
 | 
			
		||||
	incentiveKeeper       incentivekeeper.Keeper
 | 
			
		||||
	savingsKeeper         savingskeeper.Keeper
 | 
			
		||||
	liquidKeeper          liquidkeeper.Keeper
 | 
			
		||||
	earnKeeper            earnkeeper.Keeper
 | 
			
		||||
	routerKeeper          routerkeeper.Keeper
 | 
			
		||||
	vestingKeeper         vestingkeeper.VestingKeeper
 | 
			
		||||
	mintKeeper            mintkeeper.Keeper
 | 
			
		||||
	communityKeeper       communitykeeper.Keeper
 | 
			
		||||
	dasignersKeeper       dasignerskeeper.Keeper
 | 
			
		||||
	consensusParamsKeeper consensusparamkeeper.Keeper
 | 
			
		||||
 | 
			
		||||
	// make scoped keepers public for test purposes
 | 
			
		||||
@ -321,9 +308,11 @@ func NewApp(
 | 
			
		||||
		evmtypes.StoreKey, feemarkettypes.StoreKey, authzkeeper.StoreKey,
 | 
			
		||||
		capabilitytypes.StoreKey,
 | 
			
		||||
		issuancetypes.StoreKey, bep3types.StoreKey, pricefeedtypes.StoreKey,
 | 
			
		||||
		swaptypes.StoreKey, cdptypes.StoreKey, hardtypes.StoreKey, communitytypes.StoreKey,
 | 
			
		||||
		committeetypes.StoreKey, incentivetypes.StoreKey, evmutiltypes.StoreKey,
 | 
			
		||||
		savingstypes.StoreKey, earntypes.StoreKey, minttypes.StoreKey,
 | 
			
		||||
		committeetypes.StoreKey, evmutiltypes.StoreKey,
 | 
			
		||||
		minttypes.StoreKey,
 | 
			
		||||
		counciltypes.StoreKey,
 | 
			
		||||
		dasignerstypes.StoreKey,
 | 
			
		||||
		vestingtypes.StoreKey,
 | 
			
		||||
		consensusparamtypes.StoreKey, crisistypes.StoreKey,
 | 
			
		||||
	)
 | 
			
		||||
	tkeys := sdk.NewTransientStoreKeys(paramstypes.TStoreKey, evmtypes.TransientKey, feemarkettypes.TransientKey)
 | 
			
		||||
@ -360,11 +349,6 @@ func NewApp(
 | 
			
		||||
	issuanceSubspace := app.paramsKeeper.Subspace(issuancetypes.ModuleName)
 | 
			
		||||
	bep3Subspace := app.paramsKeeper.Subspace(bep3types.ModuleName)
 | 
			
		||||
	pricefeedSubspace := app.paramsKeeper.Subspace(pricefeedtypes.ModuleName)
 | 
			
		||||
	swapSubspace := app.paramsKeeper.Subspace(swaptypes.ModuleName)
 | 
			
		||||
	cdpSubspace := app.paramsKeeper.Subspace(cdptypes.ModuleName)
 | 
			
		||||
	hardSubspace := app.paramsKeeper.Subspace(hardtypes.ModuleName)
 | 
			
		||||
	incentiveSubspace := app.paramsKeeper.Subspace(incentivetypes.ModuleName)
 | 
			
		||||
	savingsSubspace := app.paramsKeeper.Subspace(savingstypes.ModuleName)
 | 
			
		||||
	ibcSubspace := app.paramsKeeper.Subspace(ibcexported.ModuleName)
 | 
			
		||||
	ibctransferSubspace := app.paramsKeeper.Subspace(ibctransfertypes.ModuleName)
 | 
			
		||||
	packetforwardSubspace := app.paramsKeeper.Subspace(packetforwardtypes.ModuleName).WithKeyTable(packetforwardtypes.ParamKeyTable())
 | 
			
		||||
@ -405,9 +389,8 @@ func NewApp(
 | 
			
		||||
		keys[stakingtypes.StoreKey],
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		govAuthAddrStr,
 | 
			
		||||
		app.vestingKeeper,
 | 
			
		||||
		stakingSubspace,
 | 
			
		||||
		govAuthAddrStr,
 | 
			
		||||
	)
 | 
			
		||||
	app.authzKeeper = authzkeeper.NewKeeper(
 | 
			
		||||
		keys[authzkeeper.StoreKey],
 | 
			
		||||
@ -567,68 +550,6 @@ func NewApp(
 | 
			
		||||
		keys[pricefeedtypes.StoreKey],
 | 
			
		||||
		pricefeedSubspace,
 | 
			
		||||
	)
 | 
			
		||||
	swapKeeper := swapkeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[swaptypes.StoreKey],
 | 
			
		||||
		swapSubspace,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
	)
 | 
			
		||||
	cdpKeeper := cdpkeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[cdptypes.StoreKey],
 | 
			
		||||
		cdpSubspace,
 | 
			
		||||
		app.pricefeedKeeper,
 | 
			
		||||
		app.auctionKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		mAccPerms,
 | 
			
		||||
	)
 | 
			
		||||
	hardKeeper := hardkeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[hardtypes.StoreKey],
 | 
			
		||||
		hardSubspace,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		app.pricefeedKeeper,
 | 
			
		||||
		app.auctionKeeper,
 | 
			
		||||
	)
 | 
			
		||||
	app.liquidKeeper = liquidkeeper.NewDefaultKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		app.stakingKeeper,
 | 
			
		||||
		&app.distrKeeper,
 | 
			
		||||
	)
 | 
			
		||||
	savingsKeeper := savingskeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[savingstypes.StoreKey],
 | 
			
		||||
		savingsSubspace,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		app.liquidKeeper,
 | 
			
		||||
	)
 | 
			
		||||
	earnKeeper := earnkeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[earntypes.StoreKey],
 | 
			
		||||
		earnSubspace,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		&app.liquidKeeper,
 | 
			
		||||
		&hardKeeper,
 | 
			
		||||
		&savingsKeeper,
 | 
			
		||||
		&app.distrKeeper,
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	app.kavadistKeeper = kavadistkeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[kavadisttypes.StoreKey],
 | 
			
		||||
		kavadistSubspace,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.distrKeeper,
 | 
			
		||||
		app.loadBlockedMaccAddrs(),
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	app.mintKeeper = mintkeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
@ -640,44 +561,6 @@ func NewApp(
 | 
			
		||||
		govAuthAddrStr,
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	// x/community's deposit/withdraw to lend proposals depend on hard keeper.
 | 
			
		||||
	app.communityKeeper = communitykeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[communitytypes.StoreKey],
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		&cdpKeeper,
 | 
			
		||||
		app.distrKeeper,
 | 
			
		||||
		&hardKeeper,
 | 
			
		||||
		&app.mintKeeper,
 | 
			
		||||
		&app.kavadistKeeper,
 | 
			
		||||
		app.stakingKeeper,
 | 
			
		||||
		govAuthAddr,
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	app.incentiveKeeper = incentivekeeper.NewKeeper(
 | 
			
		||||
		appCodec,
 | 
			
		||||
		keys[incentivetypes.StoreKey],
 | 
			
		||||
		incentiveSubspace,
 | 
			
		||||
		app.bankKeeper,
 | 
			
		||||
		&cdpKeeper,
 | 
			
		||||
		&hardKeeper,
 | 
			
		||||
		app.accountKeeper,
 | 
			
		||||
		app.stakingKeeper,
 | 
			
		||||
		&swapKeeper,
 | 
			
		||||
		&savingsKeeper,
 | 
			
		||||
		&app.liquidKeeper,
 | 
			
		||||
		&earnKeeper,
 | 
			
		||||
		app.mintKeeper,
 | 
			
		||||
		app.distrKeeper,
 | 
			
		||||
		app.pricefeedKeeper,
 | 
			
		||||
	)
 | 
			
		||||
	app.routerKeeper = routerkeeper.NewKeeper(
 | 
			
		||||
		&app.earnKeeper,
 | 
			
		||||
		app.liquidKeeper,
 | 
			
		||||
		app.stakingKeeper,
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	// create committee keeper with router
 | 
			
		||||
	committeeGovRouter := govv1beta1.NewRouter()
 | 
			
		||||
	committeeGovRouter.
 | 
			
		||||
@ -700,7 +583,6 @@ func NewApp(
 | 
			
		||||
		stakingtypes.NewMultiStakingHooks(
 | 
			
		||||
			app.distrKeeper.Hooks(),
 | 
			
		||||
			app.slashingKeeper.Hooks(),
 | 
			
		||||
			app.incentiveKeeper.Hooks(),
 | 
			
		||||
		))
 | 
			
		||||
 | 
			
		||||
	// create gov keeper with router
 | 
			
		||||
@ -711,9 +593,6 @@ func NewApp(
 | 
			
		||||
		AddRoute(paramproposal.RouterKey, params.NewParamChangeProposalHandler(app.paramsKeeper)).
 | 
			
		||||
		AddRoute(upgradetypes.RouterKey, upgrade.NewSoftwareUpgradeProposalHandler(&app.upgradeKeeper)).
 | 
			
		||||
		AddRoute(ibcclienttypes.RouterKey, ibcclient.NewClientProposalHandler(app.ibcKeeper.ClientKeeper)).
 | 
			
		||||
		AddRoute(earntypes.RouterKey, earn.NewCommunityPoolProposalHandler(app.earnKeeper)).
 | 
			
		||||
		AddRoute(communitytypes.RouterKey, community.NewCommunityPoolProposalHandler(app.communityKeeper)).
 | 
			
		||||
		AddRoute(distrtypes.RouterKey, distr.NewCommunityPoolSpendProposalHandler(app.distrKeeper)).
 | 
			
		||||
		AddRoute(committeetypes.RouterKey, committee.NewProposalHandler(app.committeeKeeper))
 | 
			
		||||
 | 
			
		||||
	govConfig := govtypes.DefaultConfig()
 | 
			
		||||
@ -732,8 +611,7 @@ func NewApp(
 | 
			
		||||
 | 
			
		||||
	// override x/gov tally handler with custom implementation
 | 
			
		||||
	tallyHandler := NewTallyHandler(
 | 
			
		||||
		app.govKeeper, *app.stakingKeeper, app.savingsKeeper, app.earnKeeper,
 | 
			
		||||
		app.liquidKeeper, app.bankKeeper,
 | 
			
		||||
		app.govKeeper, *app.stakingKeeper, app.bankKeeper,
 | 
			
		||||
	)
 | 
			
		||||
	app.govKeeper.SetTallyHandler(tallyHandler)
 | 
			
		||||
 | 
			
		||||
@ -762,7 +640,7 @@ func NewApp(
 | 
			
		||||
		upgrade.NewAppModule(&app.upgradeKeeper),
 | 
			
		||||
		evidence.NewAppModule(app.evidenceKeeper),
 | 
			
		||||
		transferModule,
 | 
			
		||||
		vesting.NewAppModule(app.accountKeeper, app.vestingKeeper),
 | 
			
		||||
		vesting.NewAppModule(app.accountKeeper, app.bankKeeper, app.vestingKeeper),
 | 
			
		||||
		authzmodule.NewAppModule(appCodec, app.authzKeeper, app.accountKeeper, app.bankKeeper, app.interfaceRegistry),
 | 
			
		||||
		issuance.NewAppModule(app.issuanceKeeper, app.accountKeeper, app.bankKeeper),
 | 
			
		||||
		bep3.NewAppModule(app.bep3Keeper, app.accountKeeper, app.bankKeeper),
 | 
			
		||||
@ -772,8 +650,6 @@ func NewApp(
 | 
			
		||||
		evmutil.NewAppModule(app.evmutilKeeper, app.bankKeeper, app.accountKeeper),
 | 
			
		||||
		// nil InflationCalculationFn, use SDK's default inflation function
 | 
			
		||||
		mint.NewAppModule(appCodec, app.mintKeeper, app.accountKeeper, nil, mintSubspace),
 | 
			
		||||
		community.NewAppModule(app.communityKeeper, app.accountKeeper),
 | 
			
		||||
		metrics.NewAppModule(options.TelemetryOptions),
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	// Warning: Some begin blockers must run before others. Ensure the dependencies are understood before modifying this list.
 | 
			
		||||
@ -801,7 +677,6 @@ func NewApp(
 | 
			
		||||
		// It should be run before cdp begin blocker which cancels out debt with stable and starts more auctions.
 | 
			
		||||
		bep3types.ModuleName,
 | 
			
		||||
		issuancetypes.ModuleName,
 | 
			
		||||
		incentivetypes.ModuleName,
 | 
			
		||||
		ibcexported.ModuleName,
 | 
			
		||||
		// Add all remaining modules with an empty begin blocker below since cosmos 0.45.0 requires it
 | 
			
		||||
		vestingtypes.ModuleName,
 | 
			
		||||
@ -816,10 +691,6 @@ func NewApp(
 | 
			
		||||
		paramstypes.ModuleName,
 | 
			
		||||
		authz.ModuleName,
 | 
			
		||||
		evmutiltypes.ModuleName,
 | 
			
		||||
		savingstypes.ModuleName,
 | 
			
		||||
		liquidtypes.ModuleName,
 | 
			
		||||
		earntypes.ModuleName,
 | 
			
		||||
		routertypes.ModuleName,
 | 
			
		||||
		consensusparamtypes.ModuleName,
 | 
			
		||||
		packetforwardtypes.ModuleName,
 | 
			
		||||
	)
 | 
			
		||||
@ -853,8 +724,6 @@ func NewApp(
 | 
			
		||||
		authz.ModuleName,
 | 
			
		||||
		evmutiltypes.ModuleName,
 | 
			
		||||
		minttypes.ModuleName,
 | 
			
		||||
		communitytypes.ModuleName,
 | 
			
		||||
		metricstypes.ModuleName,
 | 
			
		||||
		consensusparamtypes.ModuleName,
 | 
			
		||||
		packetforwardtypes.ModuleName,
 | 
			
		||||
	)
 | 
			
		||||
@ -886,9 +755,6 @@ func NewApp(
 | 
			
		||||
		paramstypes.ModuleName,
 | 
			
		||||
		upgradetypes.ModuleName,
 | 
			
		||||
		validatorvestingtypes.ModuleName,
 | 
			
		||||
		liquidtypes.ModuleName,
 | 
			
		||||
		routertypes.ModuleName,
 | 
			
		||||
		metricstypes.ModuleName,
 | 
			
		||||
		consensusparamtypes.ModuleName,
 | 
			
		||||
		packetforwardtypes.ModuleName,
 | 
			
		||||
		crisistypes.ModuleName, // runs the invariants at genesis, should run after other modules
 | 
			
		||||
 | 
			
		||||
@ -23,9 +23,6 @@ import (
 | 
			
		||||
	evmtypes "github.com/evmos/ethermint/x/evm/types"
 | 
			
		||||
	"github.com/stretchr/testify/assert"
 | 
			
		||||
	"github.com/stretchr/testify/require"
 | 
			
		||||
	abci "github.com/tendermint/tendermint/abci/types"
 | 
			
		||||
	"github.com/tendermint/tendermint/libs/log"
 | 
			
		||||
	db "github.com/tendermint/tm-db"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func TestNewApp(t *testing.T) {
 | 
			
		||||
 | 
			
		||||
@ -128,13 +128,6 @@ func upgradeHandler(
 | 
			
		||||
		// run migrations for all modules and return new consensus version map
 | 
			
		||||
		versionMap, err := app.mm.RunMigrations(ctx, app.configurator, fromVM)
 | 
			
		||||
 | 
			
		||||
		// Set risky CDP's to sync interest and liquidate every 100 blocks instead
 | 
			
		||||
		// of every block.  This significantly improves performance as this cdp
 | 
			
		||||
		// process is a signification porition of time spent during block execution.
 | 
			
		||||
		cdpParams := app.cdpKeeper.GetParams(ctx)
 | 
			
		||||
		cdpParams.LiquidationBlockInterval = CDPLiquidationBlockInterval
 | 
			
		||||
		app.cdpKeeper.SetParams(ctx, cdpParams)
 | 
			
		||||
 | 
			
		||||
		return versionMap, err
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,8 @@
 | 
			
		||||
package chaincfg
 | 
			
		||||
 | 
			
		||||
import sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
import (
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	AppName   = "0gchaind"
 | 
			
		||||
 | 
			
		||||
@ -16,7 +16,7 @@ The Kava gRPC client is a tool for making gRPC queries on a Kava chain.
 | 
			
		||||
package main
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
  kavaGrpc "github.com/kava-labs/kava/client/grpc"
 | 
			
		||||
  kavaGrpc "github.com/0glabs/0g-chain/client/grpc"
 | 
			
		||||
)
 | 
			
		||||
grpcUrl := "https://grpc.kava.io:443"
 | 
			
		||||
client, err := kavaGrpc.NewClient(grpcUrl)
 | 
			
		||||
@ -46,7 +46,7 @@ Example: Query Kava module `x/evmutil` for params
 | 
			
		||||
 | 
			
		||||
```go
 | 
			
		||||
import (
 | 
			
		||||
  evmutiltypes "github.com/kava-labs/kava/x/evmutil/types"
 | 
			
		||||
  evmutiltypes "github.com/0glabs/0g-chain/x/evmutil/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
rsp, err := client.Query.Evmutil.Params(
 | 
			
		||||
 | 
			
		||||
@ -3,8 +3,8 @@ package grpc
 | 
			
		||||
import (
 | 
			
		||||
	"errors"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/client/grpc/query"
 | 
			
		||||
	"github.com/kava-labs/kava/client/grpc/util"
 | 
			
		||||
	"github.com/0glabs/0g-chain/client/grpc/query"
 | 
			
		||||
	"github.com/0glabs/0g-chain/client/grpc/util"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// KavaGrpcClient enables the usage of kava grpc query clients and query utils
 | 
			
		||||
 | 
			
		||||
@ -3,7 +3,7 @@ package grpc_test
 | 
			
		||||
import (
 | 
			
		||||
	"testing"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/client/grpc"
 | 
			
		||||
	"github.com/0glabs/0g-chain/client/grpc"
 | 
			
		||||
	"github.com/stretchr/testify/require"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -24,21 +24,11 @@ import (
 | 
			
		||||
	evmtypes "github.com/evmos/ethermint/x/evm/types"
 | 
			
		||||
	feemarkettypes "github.com/evmos/ethermint/x/feemarket/types"
 | 
			
		||||
 | 
			
		||||
	auctiontypes "github.com/kava-labs/kava/x/auction/types"
 | 
			
		||||
	bep3types "github.com/kava-labs/kava/x/bep3/types"
 | 
			
		||||
	cdptypes "github.com/kava-labs/kava/x/cdp/types"
 | 
			
		||||
	committeetypes "github.com/kava-labs/kava/x/committee/types"
 | 
			
		||||
	communitytypes "github.com/kava-labs/kava/x/community/types"
 | 
			
		||||
	earntypes "github.com/kava-labs/kava/x/earn/types"
 | 
			
		||||
	evmutiltypes "github.com/kava-labs/kava/x/evmutil/types"
 | 
			
		||||
	hardtypes "github.com/kava-labs/kava/x/hard/types"
 | 
			
		||||
	incentivetypes "github.com/kava-labs/kava/x/incentive/types"
 | 
			
		||||
	issuancetypes "github.com/kava-labs/kava/x/issuance/types"
 | 
			
		||||
	kavadisttypes "github.com/kava-labs/kava/x/kavadist/types"
 | 
			
		||||
	liquidtypes "github.com/kava-labs/kava/x/liquid/types"
 | 
			
		||||
	pricefeedtypes "github.com/kava-labs/kava/x/pricefeed/types"
 | 
			
		||||
	savingstypes "github.com/kava-labs/kava/x/savings/types"
 | 
			
		||||
	swaptypes "github.com/kava-labs/kava/x/swap/types"
 | 
			
		||||
	bep3types "github.com/0glabs/0g-chain/x/bep3/types"
 | 
			
		||||
	committeetypes "github.com/0glabs/0g-chain/x/committee/types"
 | 
			
		||||
	evmutiltypes "github.com/0glabs/0g-chain/x/evmutil/types"
 | 
			
		||||
	issuancetypes "github.com/0glabs/0g-chain/x/issuance/types"
 | 
			
		||||
	pricefeedtypes "github.com/0glabs/0g-chain/x/pricefeed/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// QueryClient is a wrapper with all Cosmos and Kava grpc query clients
 | 
			
		||||
 | 
			
		||||
@ -3,7 +3,7 @@ package query_test
 | 
			
		||||
import (
 | 
			
		||||
	"testing"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/client/grpc/query"
 | 
			
		||||
	"github.com/0glabs/0g-chain/client/grpc/query"
 | 
			
		||||
	"github.com/stretchr/testify/require"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -7,9 +7,9 @@ import (
 | 
			
		||||
	grpctypes "github.com/cosmos/cosmos-sdk/types/grpc"
 | 
			
		||||
	"google.golang.org/grpc/metadata"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/app"
 | 
			
		||||
	"github.com/kava-labs/kava/app/params"
 | 
			
		||||
	query "github.com/kava-labs/kava/client/grpc/query"
 | 
			
		||||
	"github.com/0glabs/0g-chain/app"
 | 
			
		||||
	"github.com/0glabs/0g-chain/app/params"
 | 
			
		||||
	query "github.com/0glabs/0g-chain/client/grpc/query"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Util contains utility functions for the Kava gRPC client
 | 
			
		||||
 | 
			
		||||
@ -46,6 +46,7 @@ func (ac appCreator) newApp(
 | 
			
		||||
	traceStore io.Writer,
 | 
			
		||||
	appOpts servertypes.AppOptions,
 | 
			
		||||
) servertypes.Application {
 | 
			
		||||
	fmt.Println("newApp")
 | 
			
		||||
	var cache sdk.MultiStorePersistentCache
 | 
			
		||||
	if cast.ToBool(appOpts.Get(server.FlagInterBlockCache)) {
 | 
			
		||||
		cache = store.NewCommitKVStoreCacheManager()
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										56
									
								
								cmd/0gchaind/iavlviewer/data.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								cmd/0gchaind/iavlviewer/data.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,56 @@
 | 
			
		||||
package iavlviewer
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"crypto/sha256"
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	"github.com/cosmos/iavl"
 | 
			
		||||
	ethermintserver "github.com/evmos/ethermint/server"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func newDataCmd(opts ethermintserver.StartOptions) *cobra.Command {
 | 
			
		||||
	cmd := &cobra.Command{
 | 
			
		||||
		Use:   "data <prefix> [version number]",
 | 
			
		||||
		Short: "View all keys, hash, & size of tree.",
 | 
			
		||||
		Args:  cobra.RangeArgs(1, 2),
 | 
			
		||||
		RunE: func(cmd *cobra.Command, args []string) error {
 | 
			
		||||
			prefix := args[0]
 | 
			
		||||
			version := 0
 | 
			
		||||
			if len(args) == 2 {
 | 
			
		||||
				var err error
 | 
			
		||||
				version, err = parseVersion(args[1])
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					return err
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			tree, err := openPrefixTree(opts, cmd, prefix, version)
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			printKeys(tree)
 | 
			
		||||
			hash, err := tree.Hash()
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			fmt.Printf("Hash: %X\n", hash)
 | 
			
		||||
			fmt.Printf("Size: %X\n", tree.Size())
 | 
			
		||||
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return cmd
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func printKeys(tree *iavl.MutableTree) {
 | 
			
		||||
	fmt.Println("Printing all keys with hashed values (to detect diff)")
 | 
			
		||||
	tree.Iterate(func(key []byte, value []byte) bool { //nolint:errcheck
 | 
			
		||||
		printKey := parseWeaveKey(key)
 | 
			
		||||
		digest := sha256.Sum256(value)
 | 
			
		||||
		fmt.Printf("  %s\n    %X\n", printKey, digest)
 | 
			
		||||
		return false
 | 
			
		||||
	})
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										42
									
								
								cmd/0gchaind/iavlviewer/hash.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								cmd/0gchaind/iavlviewer/hash.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,42 @@
 | 
			
		||||
package iavlviewer
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	ethermintserver "github.com/evmos/ethermint/server"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func newHashCmd(opts ethermintserver.StartOptions) *cobra.Command {
 | 
			
		||||
	cmd := &cobra.Command{
 | 
			
		||||
		Use:   "hash <prefix> [version number]",
 | 
			
		||||
		Short: "Print the root hash of the iavl tree.",
 | 
			
		||||
		Args:  cobra.RangeArgs(1, 2),
 | 
			
		||||
		RunE: func(cmd *cobra.Command, args []string) error {
 | 
			
		||||
			prefix := args[0]
 | 
			
		||||
			version := 0
 | 
			
		||||
			if len(args) == 2 {
 | 
			
		||||
				var err error
 | 
			
		||||
				version, err = parseVersion(args[1])
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					return err
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			tree, err := openPrefixTree(opts, cmd, prefix, version)
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			hash, err := tree.Hash()
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			fmt.Printf("Hash: %X\n", hash)
 | 
			
		||||
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return cmd
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										83
									
								
								cmd/0gchaind/iavlviewer/root.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								cmd/0gchaind/iavlviewer/root.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,83 @@
 | 
			
		||||
package iavlviewer
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"strconv"
 | 
			
		||||
 | 
			
		||||
	dbm "github.com/cometbft/cometbft-db"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/client"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/server"
 | 
			
		||||
	ethermintserver "github.com/evmos/ethermint/server"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
 | 
			
		||||
	"github.com/cosmos/iavl"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	DefaultCacheSize int = 10000
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func NewCmd(opts ethermintserver.StartOptions) *cobra.Command {
 | 
			
		||||
	cmd := &cobra.Command{
 | 
			
		||||
		Use:   "iavlviewer <data|hash|shape|versions> <prefix> [version number]",
 | 
			
		||||
		Short: "Output various data, hashes, and calculations for an iavl tree",
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	cmd.AddCommand(newDataCmd(opts))
 | 
			
		||||
	cmd.AddCommand(newHashCmd(opts))
 | 
			
		||||
	cmd.AddCommand(newShapeCmd(opts))
 | 
			
		||||
	cmd.AddCommand(newVersionsCmd(opts))
 | 
			
		||||
 | 
			
		||||
	return cmd
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func parseVersion(arg string) (int, error) {
 | 
			
		||||
	version, err := strconv.Atoi(arg)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return 0, fmt.Errorf("invalid version number: '%s'", arg)
 | 
			
		||||
	}
 | 
			
		||||
	return version, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func openPrefixTree(opts ethermintserver.StartOptions, cmd *cobra.Command, prefix string, version int) (*iavl.MutableTree, error) {
 | 
			
		||||
	clientCtx := client.GetClientContextFromCmd(cmd)
 | 
			
		||||
	ctx := server.GetServerContextFromCmd(cmd)
 | 
			
		||||
	ctx.Config.SetRoot(clientCtx.HomeDir)
 | 
			
		||||
 | 
			
		||||
	db, err := opts.DBOpener(ctx.Viper, clientCtx.HomeDir, server.GetAppDBBackend(ctx.Viper))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, fmt.Errorf("failed to open database at %s: %s", clientCtx.HomeDir, err)
 | 
			
		||||
	}
 | 
			
		||||
	defer func() {
 | 
			
		||||
		if err := db.Close(); err != nil {
 | 
			
		||||
			ctx.Logger.Error("error closing db", "error", err.Error())
 | 
			
		||||
		}
 | 
			
		||||
	}()
 | 
			
		||||
 | 
			
		||||
	tree, err := readTree(db, version, []byte(prefix))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, fmt.Errorf("failed to read tree with prefix %s: %s", prefix, err)
 | 
			
		||||
	}
 | 
			
		||||
	return tree, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ReadTree loads an iavl tree from the directory
 | 
			
		||||
// If version is 0, load latest, otherwise, load named version
 | 
			
		||||
// The prefix represents which iavl tree you want to read. The iaviwer will always set a prefix.
 | 
			
		||||
func readTree(db dbm.DB, version int, prefix []byte) (*iavl.MutableTree, error) {
 | 
			
		||||
	if len(prefix) != 0 {
 | 
			
		||||
		db = dbm.NewPrefixDB(db, prefix)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	tree, err := iavl.NewMutableTree(db, DefaultCacheSize, false)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	ver, err := tree.LoadVersion(int64(version))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	fmt.Printf("Latest version: %d\n", ver)
 | 
			
		||||
	fmt.Printf("Got version: %d\n", version)
 | 
			
		||||
	return tree, err
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										47
									
								
								cmd/0gchaind/iavlviewer/shape.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								cmd/0gchaind/iavlviewer/shape.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,47 @@
 | 
			
		||||
package iavlviewer
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"strings"
 | 
			
		||||
 | 
			
		||||
	"github.com/cosmos/iavl"
 | 
			
		||||
	ethermintserver "github.com/evmos/ethermint/server"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func newShapeCmd(opts ethermintserver.StartOptions) *cobra.Command {
 | 
			
		||||
	cmd := &cobra.Command{
 | 
			
		||||
		Use:   "shape <prefix> [version number]",
 | 
			
		||||
		Short: "View shape of iavl tree.",
 | 
			
		||||
		Args:  cobra.RangeArgs(1, 2),
 | 
			
		||||
		RunE: func(cmd *cobra.Command, args []string) error {
 | 
			
		||||
			prefix := args[0]
 | 
			
		||||
			version := 0
 | 
			
		||||
			if len(args) == 2 {
 | 
			
		||||
				var err error
 | 
			
		||||
				version, err = parseVersion(args[1])
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					return err
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			tree, err := openPrefixTree(opts, cmd, prefix, version)
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			printShape(tree)
 | 
			
		||||
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return cmd
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func printShape(tree *iavl.MutableTree) {
 | 
			
		||||
	// shape := tree.RenderShape("  ", nil)
 | 
			
		||||
	// TODO: handle this error
 | 
			
		||||
	shape, _ := tree.RenderShape("  ", nodeEncoder)
 | 
			
		||||
	fmt.Println(strings.Join(shape, "\n"))
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										74
									
								
								cmd/0gchaind/iavlviewer/versions.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								cmd/0gchaind/iavlviewer/versions.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,74 @@
 | 
			
		||||
package iavlviewer
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"bytes"
 | 
			
		||||
	"encoding/hex"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"strings"
 | 
			
		||||
 | 
			
		||||
	"github.com/cosmos/iavl"
 | 
			
		||||
	ethermintserver "github.com/evmos/ethermint/server"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func newVersionsCmd(opts ethermintserver.StartOptions) *cobra.Command {
 | 
			
		||||
	cmd := &cobra.Command{
 | 
			
		||||
		Use:   "versions <prefix>",
 | 
			
		||||
		Short: "Print all versions of iavl tree",
 | 
			
		||||
		Args:  cobra.ExactArgs(1),
 | 
			
		||||
		RunE: func(cmd *cobra.Command, args []string) error {
 | 
			
		||||
			prefix := args[0]
 | 
			
		||||
			tree, err := openPrefixTree(opts, cmd, prefix, 15)
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			printVersions(tree)
 | 
			
		||||
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return cmd
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func printVersions(tree *iavl.MutableTree) {
 | 
			
		||||
	versions := tree.AvailableVersions()
 | 
			
		||||
	fmt.Println("Available versions:")
 | 
			
		||||
	for _, v := range versions {
 | 
			
		||||
		fmt.Printf("  %d\n", v)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// parseWeaveKey assumes a separating : where all in front should be ascii,
 | 
			
		||||
// and all afterwards may be ascii or binary
 | 
			
		||||
func parseWeaveKey(key []byte) string {
 | 
			
		||||
	cut := bytes.IndexRune(key, ':')
 | 
			
		||||
	if cut == -1 {
 | 
			
		||||
		return encodeID(key)
 | 
			
		||||
	}
 | 
			
		||||
	prefix := key[:cut]
 | 
			
		||||
	id := key[cut+1:]
 | 
			
		||||
	return fmt.Sprintf("%s:%s", encodeID(prefix), encodeID(id))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// casts to a string if it is printable ascii, hex-encodes otherwise
 | 
			
		||||
func encodeID(id []byte) string {
 | 
			
		||||
	for _, b := range id {
 | 
			
		||||
		if b < 0x20 || b >= 0x80 {
 | 
			
		||||
			return strings.ToUpper(hex.EncodeToString(id))
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	return string(id)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func nodeEncoder(id []byte, depth int, isLeaf bool) string {
 | 
			
		||||
	prefix := fmt.Sprintf("-%d ", depth)
 | 
			
		||||
	if isLeaf {
 | 
			
		||||
		prefix = fmt.Sprintf("*%d ", depth)
 | 
			
		||||
	}
 | 
			
		||||
	if len(id) == 0 {
 | 
			
		||||
		return fmt.Sprintf("%s<nil>", prefix)
 | 
			
		||||
	}
 | 
			
		||||
	return fmt.Sprintf("%s%s", prefix, parseWeaveKey(id))
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
package cmd
 | 
			
		||||
package main
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"bufio"
 | 
			
		||||
@ -52,13 +52,6 @@ The pass backend requires GnuPG: https://gnupg.org/
 | 
			
		||||
	addCmd := keys.AddKeyCommand()
 | 
			
		||||
	addCmd.Flags().Bool(ethFlag, false, "use default evm coin-type (60) and key signing algorithm (\"eth_secp256k1\")")
 | 
			
		||||
 | 
			
		||||
	algoFlag := addCmd.Flag(flags.FlagKeyAlgorithm)
 | 
			
		||||
	algoFlag.DefValue = string(hd.EthSecp256k1Type)
 | 
			
		||||
	err := algoFlag.Value.Set(string(hd.EthSecp256k1Type))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		panic(err)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	addCmd.RunE = runAddCmd
 | 
			
		||||
 | 
			
		||||
	cmd.AddCommand(
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,7 @@
 | 
			
		||||
package main
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/server"
 | 
			
		||||
@ -11,12 +12,11 @@ import (
 | 
			
		||||
 | 
			
		||||
func main() {
 | 
			
		||||
	chaincfg.SetSDKConfig().Seal()
 | 
			
		||||
 | 
			
		||||
	rootCmd := NewRootCmd()
 | 
			
		||||
 | 
			
		||||
	if err := svrcmd.Execute(rootCmd, chaincfg.EnvPrefix, chaincfg.DefaultNodeHome); err != nil {
 | 
			
		||||
		switch e := err.(type) {
 | 
			
		||||
		case server.ErrorCode:
 | 
			
		||||
			fmt.Println("error")
 | 
			
		||||
			os.Exit(e.Code)
 | 
			
		||||
 | 
			
		||||
		default:
 | 
			
		||||
 | 
			
		||||
@ -27,6 +27,8 @@ import (
 | 
			
		||||
	"github.com/0glabs/0g-chain/app"
 | 
			
		||||
	"github.com/0glabs/0g-chain/app/params"
 | 
			
		||||
	"github.com/0glabs/0g-chain/chaincfg"
 | 
			
		||||
	"github.com/0glabs/0g-chain/cmd/0gchaind/iavlviewer"
 | 
			
		||||
	"github.com/0glabs/0g-chain/cmd/0gchaind/rocksdb"
 | 
			
		||||
	"github.com/0glabs/0g-chain/cmd/opendb"
 | 
			
		||||
	"github.com/0glabs/0g-chain/crypto/vrf"
 | 
			
		||||
)
 | 
			
		||||
@ -48,18 +50,10 @@ func NewRootCmd() *cobra.Command {
 | 
			
		||||
		WithLegacyAmino(encodingConfig.Amino).
 | 
			
		||||
		WithInput(os.Stdin).
 | 
			
		||||
		WithAccountRetriever(types.AccountRetriever{}).
 | 
			
		||||
<<<<<<< HEAD
 | 
			
		||||
		WithBroadcastMode(flags.FlagBroadcastMode).
 | 
			
		||||
		WithHomeDir(app.DefaultNodeHome).
 | 
			
		||||
		WithKeyringOptions(hd.EthSecp256k1Option()).
 | 
			
		||||
		WithViper(EnvPrefix)
 | 
			
		||||
=======
 | 
			
		||||
		WithBroadcastMode(flags.BroadcastBlock).
 | 
			
		||||
		WithHomeDir(chaincfg.DefaultNodeHome).
 | 
			
		||||
		WithKeyringOptions(customKeyringOptions()).
 | 
			
		||||
		WithViper(chaincfg.EnvPrefix)
 | 
			
		||||
>>>>>>> be1cd76f (add vrf)
 | 
			
		||||
 | 
			
		||||
	rootCmd := &cobra.Command{
 | 
			
		||||
		Use:   chaincfg.AppName,
 | 
			
		||||
		Short: "Daemon and CLI for the 0g-chain blockchain.",
 | 
			
		||||
@ -93,7 +87,6 @@ func NewRootCmd() *cobra.Command {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	addSubCmds(rootCmd, encodingConfig, chaincfg.DefaultNodeHome)
 | 
			
		||||
 | 
			
		||||
	return rootCmd
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -137,12 +130,13 @@ func addSubCmds(rootCmd *cobra.Command, encodingConfig params.EncodingConfig, de
 | 
			
		||||
		ac.addStartCmdFlags,
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	// add keybase, gas RPC, query, and tx child commands
 | 
			
		||||
	// add keybase, auxiliary RPC, query, and tx child commands
 | 
			
		||||
	rootCmd.AddCommand(
 | 
			
		||||
		newQueryCmd(),
 | 
			
		||||
		newTxCmd(),
 | 
			
		||||
		keyCommands(app.DefaultNodeHome),
 | 
			
		||||
		keyCommands(chaincfg.DefaultNodeHome),
 | 
			
		||||
		rocksdb.RocksDBCmd,
 | 
			
		||||
		newShardCmd(opts),
 | 
			
		||||
		iavlviewer.NewCmd(opts),
 | 
			
		||||
	)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,10 @@
 | 
			
		||||
package cmd
 | 
			
		||||
package main
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"strings"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/app"
 | 
			
		||||
	"github.com/0glabs/0g-chain/app"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
 | 
			
		||||
	dbm "github.com/cometbft/cometbft-db"
 | 
			
		||||
 | 
			
		||||
@ -5,8 +5,8 @@ package vrf
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	fmt "fmt"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	io "io"
 | 
			
		||||
	math "math"
 | 
			
		||||
	math_bits "math/bits"
 | 
			
		||||
 | 
			
		||||
@ -6,12 +6,12 @@ import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	errorsmod "cosmossdk.io/errors"
 | 
			
		||||
	tmcrypto "github.com/cometbft/cometbft/crypto"
 | 
			
		||||
	vrfalgo "github.com/coniks-sys/coniks-go/crypto/vrf"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/codec"
 | 
			
		||||
	cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types"
 | 
			
		||||
	errortypes "github.com/cosmos/cosmos-sdk/types/errors"
 | 
			
		||||
	"github.com/ethereum/go-ethereum/common"
 | 
			
		||||
	tmcrypto "github.com/tendermint/tendermint/crypto"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										147
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										147
									
								
								go.mod
									
									
									
									
									
								
							@ -1,20 +1,20 @@
 | 
			
		||||
module github.com/0glabs/0g-chain
 | 
			
		||||
 | 
			
		||||
go 1.20
 | 
			
		||||
go 1.21
 | 
			
		||||
 | 
			
		||||
require (
 | 
			
		||||
	cosmossdk.io/errors v1.0.1
 | 
			
		||||
	cosmossdk.io/math v1.3.0
 | 
			
		||||
	cosmossdk.io/simapp v0.0.0-20231127212628-044ff4d8c015
 | 
			
		||||
	github.com/cenkalti/backoff/v4 v4.1.3
 | 
			
		||||
	github.com/cometbft/cometbft v0.37.4
 | 
			
		||||
	github.com/cometbft/cometbft-db v0.9.1
 | 
			
		||||
	github.com/coniks-sys/coniks-go v0.0.0-20180722014011-11acf4819b71
 | 
			
		||||
	github.com/consensys/gnark-crypto v0.12.1
 | 
			
		||||
	github.com/cosmos/cosmos-proto v1.0.0-beta.3
 | 
			
		||||
	github.com/cosmos/cosmos-sdk v0.47.7
 | 
			
		||||
	github.com/cosmos/cosmos-proto v1.0.0-beta.4
 | 
			
		||||
	github.com/cosmos/cosmos-sdk v0.47.10
 | 
			
		||||
	github.com/cosmos/go-bip39 v1.0.0
 | 
			
		||||
	github.com/cosmos/gogoproto v1.4.10
 | 
			
		||||
	github.com/cosmos/iavl v0.20.1
 | 
			
		||||
	github.com/cosmos/ibc-apps/middleware/packet-forward-middleware/v7 v7.1.3
 | 
			
		||||
	github.com/cosmos/ibc-go/v7 v7.4.0
 | 
			
		||||
	github.com/ethereum/go-ethereum v1.10.26
 | 
			
		||||
@ -24,50 +24,44 @@ require (
 | 
			
		||||
	github.com/golang/protobuf v1.5.3
 | 
			
		||||
	github.com/gorilla/mux v1.8.0
 | 
			
		||||
	github.com/grpc-ecosystem/grpc-gateway v1.16.0
 | 
			
		||||
	github.com/influxdata/influxdb v1.8.3
 | 
			
		||||
	github.com/kava-labs/kava v0.26.1
 | 
			
		||||
	github.com/linxGnu/grocksdb v1.8.6
 | 
			
		||||
	github.com/prometheus/client_golang v1.14.0
 | 
			
		||||
	github.com/stretchr/testify v1.8.4
 | 
			
		||||
	golang.org/x/exp v0.0.0-20230711153332-06a737ee72cb
 | 
			
		||||
	google.golang.org/grpc v1.59.0
 | 
			
		||||
	github.com/pelletier/go-toml/v2 v2.1.0
 | 
			
		||||
	github.com/spf13/cast v1.6.0
 | 
			
		||||
	github.com/spf13/cobra v1.8.0
 | 
			
		||||
	github.com/spf13/viper v1.18.1
 | 
			
		||||
	github.com/subosito/gotenv v1.6.0
 | 
			
		||||
	github.com/prometheus/client_golang v1.14.0
 | 
			
		||||
	github.com/shopspring/decimal v1.4.0
 | 
			
		||||
	github.com/stretchr/testify v1.8.3
 | 
			
		||||
	github.com/tendermint/tendermint v0.34.27
 | 
			
		||||
	github.com/tendermint/tm-db v0.6.7
 | 
			
		||||
	golang.org/x/crypto v0.14.0
 | 
			
		||||
	google.golang.org/genproto/googleapis/api v0.0.0-20230920204549-e6e6cdab5c13
 | 
			
		||||
	google.golang.org/grpc v1.58.3
 | 
			
		||||
	google.golang.org/protobuf v1.31.0
 | 
			
		||||
	sigs.k8s.io/yaml v1.3.0
 | 
			
		||||
	github.com/spf13/cast v1.6.0
 | 
			
		||||
	github.com/spf13/cobra v1.7.0
 | 
			
		||||
	github.com/spf13/viper v1.16.0
 | 
			
		||||
	github.com/stretchr/testify v1.8.4
 | 
			
		||||
	github.com/subosito/gotenv v1.6.0
 | 
			
		||||
	github.com/tendermint/tendermint v0.35.9
 | 
			
		||||
	golang.org/x/crypto v0.24.0
 | 
			
		||||
	golang.org/x/exp v0.0.0-20230905200255-921286631fa9
 | 
			
		||||
	google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0
 | 
			
		||||
	google.golang.org/grpc v1.60.1
 | 
			
		||||
	google.golang.org/protobuf v1.32.0
 | 
			
		||||
	sigs.k8s.io/yaml v1.4.0
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
require (
 | 
			
		||||
	cloud.google.com/go v0.110.8 // indirect
 | 
			
		||||
	cloud.google.com/go/compute v1.23.0 // indirect
 | 
			
		||||
	cloud.google.com/go v0.111.0 // indirect
 | 
			
		||||
	cloud.google.com/go/compute v1.23.3 // indirect
 | 
			
		||||
	cloud.google.com/go/compute/metadata v0.2.3 // indirect
 | 
			
		||||
	cloud.google.com/go/iam v1.1.5 // indirect
 | 
			
		||||
	cloud.google.com/go/storage v1.35.1 // indirect
 | 
			
		||||
	cosmossdk.io/api v0.3.1 // indirect
 | 
			
		||||
	cosmossdk.io/core v0.6.1 // indirect
 | 
			
		||||
	cosmossdk.io/depinject v1.0.0-alpha.4 // indirect
 | 
			
		||||
	cosmossdk.io/log v1.3.1 // indirect
 | 
			
		||||
	cosmossdk.io/simapp v0.0.0-20231127212628-044ff4d8c015 // indirect
 | 
			
		||||
	cosmossdk.io/tools/rosetta v0.2.1 // indirect
 | 
			
		||||
	filippo.io/edwards25519 v1.0.0 // indirect
 | 
			
		||||
	cloud.google.com/go/iam v1.1.2 // indirect
 | 
			
		||||
	cloud.google.com/go/storage v1.30.1 // indirect
 | 
			
		||||
	cosmossdk.io/log v1.3.1 // indirect
 | 
			
		||||
	github.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4 // indirect
 | 
			
		||||
	github.com/99designs/keyring v1.2.1 // indirect
 | 
			
		||||
	github.com/ChainSafe/go-schnorrkel v1.0.0 // indirect
 | 
			
		||||
	cloud.google.com/go/iam v1.1.5 // indirect
 | 
			
		||||
	cloud.google.com/go/storage v1.35.1 // indirect
 | 
			
		||||
	github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect
 | 
			
		||||
	github.com/Microsoft/go-winio v0.6.1 // indirect
 | 
			
		||||
	filippo.io/edwards25519 v1.0.0-rc.1 // indirect
 | 
			
		||||
	github.com/StackExchange/wmi v1.2.1 // indirect
 | 
			
		||||
	github.com/VictoriaMetrics/fastcache v1.6.0 // indirect
 | 
			
		||||
	github.com/allegro/bigcache v1.2.1 // indirect
 | 
			
		||||
	github.com/armon/go-metrics v0.4.1 // indirect
 | 
			
		||||
	github.com/aws/aws-sdk-go v1.44.203 // indirect
 | 
			
		||||
	github.com/beorn7/perks v1.0.1 // indirect
 | 
			
		||||
@ -80,7 +74,7 @@ require (
 | 
			
		||||
	github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1 // indirect
 | 
			
		||||
	github.com/cespare/xxhash v1.1.0 // indirect
 | 
			
		||||
	github.com/cespare/xxhash/v2 v2.2.0 // indirect
 | 
			
		||||
	github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e // indirect
 | 
			
		||||
	github.com/chzyer/readline v1.5.1 // indirect
 | 
			
		||||
	github.com/cockroachdb/apd/v2 v2.0.2 // indirect
 | 
			
		||||
	github.com/cockroachdb/errors v1.10.0 // indirect
 | 
			
		||||
	github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect
 | 
			
		||||
@ -90,54 +84,46 @@ require (
 | 
			
		||||
	github.com/consensys/bavard v0.1.13 // indirect
 | 
			
		||||
	github.com/cosmos/btcutil v1.0.5 // indirect
 | 
			
		||||
	github.com/cosmos/gogogateway v1.2.0 // indirect
 | 
			
		||||
	github.com/cosmos/iavl v0.20.1 // indirect
 | 
			
		||||
	github.com/cosmos/ics23/go v0.10.0 // indirect
 | 
			
		||||
	github.com/cosmos/gogoproto v1.4.11 // indirect
 | 
			
		||||
	github.com/cosmos/ledger-cosmos-go v0.13.1 // indirect
 | 
			
		||||
	github.com/cosmos/rosetta-sdk-go v0.10.0 // indirect
 | 
			
		||||
	github.com/creachadair/taskgroup v0.4.2 // indirect
 | 
			
		||||
	github.com/danieljoos/wincred v1.1.2 // indirect
 | 
			
		||||
	github.com/davecgh/go-spew v1.1.1 // indirect
 | 
			
		||||
	github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
 | 
			
		||||
	github.com/deckarep/golang-set v1.8.0 // indirect
 | 
			
		||||
	github.com/decred/dcrd/dcrec/secp256k1/v4 v4.1.0 // indirect
 | 
			
		||||
	github.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f // indirect
 | 
			
		||||
	github.com/dgraph-io/badger/v2 v2.2007.4 // indirect
 | 
			
		||||
	github.com/dgraph-io/badger/v3 v3.2103.2 // indirect
 | 
			
		||||
	github.com/dgraph-io/ristretto v0.1.0 // indirect
 | 
			
		||||
	github.com/dgraph-io/ristretto v0.1.1 // indirect
 | 
			
		||||
	github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 // indirect
 | 
			
		||||
	github.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91 // indirect
 | 
			
		||||
	github.com/dop251/goja v0.0.0-20220405120441-9037c2b61cbf // indirect
 | 
			
		||||
	github.com/dustin/go-humanize v1.0.0 // indirect
 | 
			
		||||
	github.com/dvsekhvalnov/jose2go v1.5.0 // indirect
 | 
			
		||||
	github.com/dustin/go-humanize v1.0.1 // indirect
 | 
			
		||||
	github.com/dvsekhvalnov/jose2go v1.6.0 // indirect
 | 
			
		||||
	github.com/edsrzf/mmap-go v1.0.0 // indirect
 | 
			
		||||
	github.com/felixge/httpsnoop v1.0.2 // indirect
 | 
			
		||||
	github.com/fsnotify/fsnotify v1.7.0 // indirect
 | 
			
		||||
	github.com/fatih/color v1.17.0 // indirect
 | 
			
		||||
	github.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff // indirect
 | 
			
		||||
	github.com/getsentry/sentry-go v0.23.0 // indirect
 | 
			
		||||
	github.com/go-kit/log v0.2.1 // indirect
 | 
			
		||||
	github.com/go-logfmt/logfmt v0.5.1 // indirect
 | 
			
		||||
	github.com/go-logfmt/logfmt v0.6.0 // indirect
 | 
			
		||||
	github.com/go-logr/logr v1.2.4 // indirect
 | 
			
		||||
	github.com/go-logr/stdr v1.2.2 // indirect
 | 
			
		||||
	github.com/go-ole/go-ole v1.2.6 // indirect
 | 
			
		||||
	github.com/go-sourcemap/sourcemap v2.1.3+incompatible // indirect
 | 
			
		||||
	github.com/go-stack/stack v1.8.1 // indirect
 | 
			
		||||
	github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 // indirect
 | 
			
		||||
	github.com/gogo/googleapis v1.4.1 // indirect
 | 
			
		||||
	github.com/gogo/gateway v1.1.0 // indirect
 | 
			
		||||
	github.com/golang/glog v1.1.0 // indirect
 | 
			
		||||
	github.com/golang/glog v1.1.2 // indirect
 | 
			
		||||
	github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
 | 
			
		||||
	github.com/golang/mock v1.6.0 // indirect
 | 
			
		||||
	github.com/golang/snappy v0.0.4 // indirect
 | 
			
		||||
	github.com/google/btree v1.1.2 // indirect
 | 
			
		||||
	github.com/google/flatbuffers v1.12.1 // indirect
 | 
			
		||||
	github.com/google/go-cmp v0.6.0 // indirect
 | 
			
		||||
	github.com/google/orderedcode v0.0.1 // indirect
 | 
			
		||||
	github.com/google/flatbuffers v1.12.1 // indirect
 | 
			
		||||
	github.com/google/go-cmp v0.6.0 // indirect
 | 
			
		||||
	github.com/google/pprof v0.0.0-20230228050547-1710fef4ab10 // indirect
 | 
			
		||||
	github.com/google/s2a-go v0.1.7 // indirect
 | 
			
		||||
	github.com/google/uuid v1.4.0 // indirect
 | 
			
		||||
	github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect
 | 
			
		||||
	github.com/google/orderedcode v0.0.1 // indirect
 | 
			
		||||
	github.com/googleapis/gax-go/v2 v2.12.0 // indirect
 | 
			
		||||
	github.com/gorilla/handlers v1.5.1 // indirect
 | 
			
		||||
	github.com/gorilla/websocket v1.5.0 // indirect
 | 
			
		||||
@ -159,15 +145,13 @@ require (
 | 
			
		||||
	github.com/huin/goupnp v1.0.3 // indirect
 | 
			
		||||
	github.com/iancoleman/orderedmap v0.2.0 // indirect
 | 
			
		||||
	github.com/improbable-eng/grpc-web v0.15.0 // indirect
 | 
			
		||||
	github.com/inconshreveable/mousetrap v1.0.1 // indirect
 | 
			
		||||
	github.com/inconshreveable/mousetrap v1.1.0 // indirect
 | 
			
		||||
	github.com/jackpal/go-nat-pmp v1.0.2 // indirect
 | 
			
		||||
	github.com/jmespath/go-jmespath v0.4.0 // indirect
 | 
			
		||||
	github.com/jmhodges/levigo v1.0.0 // indirect
 | 
			
		||||
	github.com/klauspost/compress v1.17.0 // indirect
 | 
			
		||||
	github.com/kr/pretty v0.3.1 // indirect
 | 
			
		||||
	github.com/kr/text v0.2.0 // indirect
 | 
			
		||||
	github.com/klauspost/compress v1.17.0 // indirect
 | 
			
		||||
	github.com/json-iterator/go v1.1.12 // indirect
 | 
			
		||||
	github.com/klauspost/compress v1.15.15 // indirect
 | 
			
		||||
	github.com/lib/pq v1.10.7 // indirect
 | 
			
		||||
	github.com/libp2p/go-buffer-pool v0.1.0 // indirect
 | 
			
		||||
	github.com/magiconair/properties v1.8.7 // indirect
 | 
			
		||||
@ -182,15 +166,13 @@ require (
 | 
			
		||||
	github.com/mitchellh/go-testing-interface v1.14.1 // indirect
 | 
			
		||||
	github.com/mitchellh/mapstructure v1.5.0 // indirect
 | 
			
		||||
	github.com/mmcloughlin/addchain v0.4.0 // indirect
 | 
			
		||||
	github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
 | 
			
		||||
	github.com/modern-go/reflect2 v1.0.2 // indirect
 | 
			
		||||
	github.com/mtibben/percent v0.2.1 // indirect
 | 
			
		||||
	github.com/olekukonko/tablewriter v0.0.5 // indirect
 | 
			
		||||
	github.com/petermattis/goid v0.0.0-20230317030725-371a4b8eda08 // indirect
 | 
			
		||||
	github.com/pkg/errors v0.9.1 // indirect
 | 
			
		||||
	github.com/pmezard/go-difflib v1.0.0 // indirect
 | 
			
		||||
	github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
 | 
			
		||||
	github.com/prometheus/client_model v0.3.0 // indirect
 | 
			
		||||
	github.com/prometheus/common v0.40.0 // indirect
 | 
			
		||||
	github.com/prometheus/common v0.42.0 // indirect
 | 
			
		||||
	github.com/prometheus/procfs v0.9.0 // indirect
 | 
			
		||||
	github.com/prometheus/tsdb v0.7.1 // indirect
 | 
			
		||||
	github.com/rakyll/statik v0.1.7 // indirect
 | 
			
		||||
@ -198,16 +180,11 @@ require (
 | 
			
		||||
	github.com/rjeczalik/notify v0.9.1 // indirect
 | 
			
		||||
	github.com/rogpeppe/go-internal v1.11.0 // indirect
 | 
			
		||||
	github.com/rs/cors v1.8.3 // indirect
 | 
			
		||||
	github.com/russross/blackfriday/v2 v2.1.0 // indirect
 | 
			
		||||
	github.com/rs/zerolog v1.32.0 // indirect
 | 
			
		||||
	github.com/sasha-s/go-deadlock v0.3.1 // indirect
 | 
			
		||||
	github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible // indirect
 | 
			
		||||
	github.com/spf13/afero v1.9.3 // indirect
 | 
			
		||||
	github.com/spf13/jwalterweatherman v1.1.0 // indirect
 | 
			
		||||
	github.com/sagikazarmark/locafero v0.4.0 // indirect
 | 
			
		||||
	github.com/sagikazarmark/slog-shim v0.1.0 // indirect
 | 
			
		||||
	github.com/sourcegraph/conc v0.3.0 // indirect
 | 
			
		||||
	github.com/spf13/afero v1.11.0 // indirect
 | 
			
		||||
	github.com/spf13/jwalterweatherman v1.1.0 // indirect
 | 
			
		||||
	github.com/spf13/pflag v1.0.5 // indirect
 | 
			
		||||
	github.com/status-im/keycard-go v0.2.0 // indirect
 | 
			
		||||
	github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d // indirect
 | 
			
		||||
@ -221,41 +198,26 @@ require (
 | 
			
		||||
	github.com/zondax/ledger-go v0.14.3 // indirect
 | 
			
		||||
	go.etcd.io/bbolt v1.3.8 // indirect
 | 
			
		||||
	go.opencensus.io v0.24.0 // indirect
 | 
			
		||||
	github.com/ugorji/go/codec v1.2.7 // indirect
 | 
			
		||||
	github.com/valyala/bytebufferpool v1.0.0 // indirect
 | 
			
		||||
	github.com/valyala/fasthttp v1.53.0 // indirect
 | 
			
		||||
	github.com/ulikunitz/xz v0.5.10 // indirect
 | 
			
		||||
	github.com/zondax/hid v0.9.1 // indirect
 | 
			
		||||
	github.com/zondax/ledger-go v0.14.2 // indirect
 | 
			
		||||
	go.etcd.io/bbolt v1.3.7 // indirect
 | 
			
		||||
	go.opencensus.io v0.24.0 // indirect
 | 
			
		||||
	golang.org/x/exp v0.0.0-20230213192124-5e25df0256eb // indirect
 | 
			
		||||
	golang.org/x/net v0.17.0 // indirect
 | 
			
		||||
	golang.org/x/oauth2 v0.10.0 // indirect
 | 
			
		||||
	golang.org/x/sync v0.3.0 // indirect
 | 
			
		||||
	golang.org/x/sys v0.15.0 // indirect
 | 
			
		||||
	golang.org/x/term v0.13.0 // indirect
 | 
			
		||||
	golang.org/x/text v0.13.0 // indirect
 | 
			
		||||
	golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
 | 
			
		||||
	go.uber.org/multierr v1.10.0 // indirect
 | 
			
		||||
	golang.org/x/exp v0.0.0-20230905200255-921286631fa9 // indirect
 | 
			
		||||
	golang.org/x/net v0.23.0 // indirect
 | 
			
		||||
	go.opentelemetry.io/otel v1.19.0 // indirect
 | 
			
		||||
	go.opentelemetry.io/otel/metric v1.19.0 // indirect
 | 
			
		||||
	go.opentelemetry.io/otel/trace v1.19.0 // indirect
 | 
			
		||||
	golang.org/x/net v0.21.0 // indirect
 | 
			
		||||
	golang.org/x/oauth2 v0.15.0 // indirect
 | 
			
		||||
	golang.org/x/sync v0.5.0 // indirect
 | 
			
		||||
	golang.org/x/sys v0.18.0 // indirect
 | 
			
		||||
	golang.org/x/term v0.18.0 // indirect
 | 
			
		||||
	golang.org/x/text v0.14.0 // indirect
 | 
			
		||||
	golang.org/x/sync v0.7.0 // indirect
 | 
			
		||||
	golang.org/x/sys v0.21.0 // indirect
 | 
			
		||||
	golang.org/x/term v0.21.0 // indirect
 | 
			
		||||
	golang.org/x/text v0.16.0 // indirect
 | 
			
		||||
	golang.org/x/time v0.5.0 // indirect
 | 
			
		||||
	google.golang.org/api v0.153.0 // indirect
 | 
			
		||||
	google.golang.org/appengine v1.6.8 // indirect
 | 
			
		||||
	google.golang.org/genproto v0.0.0-20231106174013-bbf56f31fb17 // indirect
 | 
			
		||||
	google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f // indirect
 | 
			
		||||
	google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917 // indirect
 | 
			
		||||
	google.golang.org/genproto/googleapis/rpc v0.0.0-20240108191215-35c7eff3a6b1 // indirect
 | 
			
		||||
	gopkg.in/ini.v1 v1.67.0 // indirect
 | 
			
		||||
	gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
 | 
			
		||||
	gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect
 | 
			
		||||
	gopkg.in/yaml.v3 v3.0.1 // indirect
 | 
			
		||||
	nhooyr.io/websocket v1.8.6 // indirect
 | 
			
		||||
	pgregory.net/rapid v0.5.5 // indirect
 | 
			
		||||
	pgregory.net/rapid v1.1.0 // indirect
 | 
			
		||||
	rsc.io/tmplfunc v0.0.3 // indirect
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@ -267,19 +229,16 @@ replace (
 | 
			
		||||
	github.com/cometbft/cometbft-db => github.com/kava-labs/cometbft-db v0.9.1-kava.1
 | 
			
		||||
	// Use cosmos-sdk fork with backported fix for unsafe-reset-all, staking transfer events, and custom tally handler support
 | 
			
		||||
	// github.com/cosmos/cosmos-sdk => github.com/0glabs/cosmos-sdk v0.46.11-kava.3
 | 
			
		||||
	github.com/cosmos/cosmos-sdk => github.com/0glabs/cosmos-sdk v0.47.10-0glabs.0
 | 
			
		||||
	github.com/cosmos/cosmos-sdk => /home/wenhui/v047/cosmos-sdk
 | 
			
		||||
	// See https://github.com/cosmos/cosmos-sdk/pull/13093
 | 
			
		||||
	github.com/dgrijalva/jwt-go => github.com/golang-jwt/jwt/v4 v4.4.2
 | 
			
		||||
	// Use go-ethereum fork with precompiles
 | 
			
		||||
	github.com/ethereum/go-ethereum => github.com/evmos/go-ethereum v1.10.26-evmos-rc2
 | 
			
		||||
	// Use ethermint fork that respects min-gas-price with NoBaseFee true and london enabled, and includes eip712 support
 | 
			
		||||
	github.com/evmos/ethermint => github.com/0glabs/ethermint v0.21.0-0glabs-v26.3
 | 
			
		||||
	github.com/evmos/ethermint => github.com/0g-wh/ethermint v0.21.0-0glabs-v26.3.1
 | 
			
		||||
	// See https://github.com/cosmos/cosmos-sdk/pull/10401, https://github.com/cosmos/cosmos-sdk/commit/0592ba6158cd0bf49d894be1cef4faeec59e8320
 | 
			
		||||
	github.com/gin-gonic/gin => github.com/gin-gonic/gin v1.9.0
 | 
			
		||||
	// Downgraded to avoid bugs in following commits which causes "version does not exist" errors
 | 
			
		||||
	github.com/syndtr/goleveldb => github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7
 | 
			
		||||
	// Use cometbft fork of tendermint
 | 
			
		||||
	github.com/tendermint/tendermint => github.com/0glabs/cometbft v0.34.27-0glabs.0
 | 
			
		||||
	// Indirect dependencies still use tendermint/tm-db
 | 
			
		||||
	github.com/tendermint/tm-db => github.com/kava-labs/tm-db v0.6.7-kava.4
 | 
			
		||||
	golang.org/x/exp => golang.org/x/exp v0.0.0-20230711153332-06a737ee72cb
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@ -81,7 +81,7 @@ $BINARY gentx $validatorKeyName 1000000000000000000000ua0gi --keyring-backend te
 | 
			
		||||
$BINARY collect-gentxs
 | 
			
		||||
 | 
			
		||||
# Replace stake with ua0gi
 | 
			
		||||
sed -in-place='' 's/stake/ua0gi/g' $DATA/config/genesis.json
 | 
			
		||||
sed -in-place='' 's/"stake"/"ua0gi"/g' $DATA/config/genesis.json
 | 
			
		||||
 | 
			
		||||
# Replace the default evm denom of aphoton with neuron
 | 
			
		||||
sed -in-place='' 's/aphoton/neuron/g' $DATA/config/genesis.json
 | 
			
		||||
@ -121,4 +121,4 @@ cat $GENESIS | jq '.app_state.evm.params.chain_config.cancun_block = null' >$TMP
 | 
			
		||||
 | 
			
		||||
$BINARY config broadcast-mode sync
 | 
			
		||||
 | 
			
		||||
$BINARY start --home $DATA
 | 
			
		||||
$BINARY start --home $DATA --log_output_console
 | 
			
		||||
 | 
			
		||||
@ -5,4 +5,4 @@ plugins:
 | 
			
		||||
    opt: plugins=grpc,Mgoogle/protobuf/any.proto=github.com/cosmos/cosmos-sdk/codec/types
 | 
			
		||||
  - name: grpc-gateway
 | 
			
		||||
    out: out
 | 
			
		||||
    opt: logtostderr=true,allow_colon_final_segments=true
 | 
			
		||||
    opt: logtostderr=true
 | 
			
		||||
 | 
			
		||||
@ -1,48 +1,48 @@
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
package kava.validatorvesting.v1beta1;
 | 
			
		||||
package zg.validatorvesting.v1beta1;
 | 
			
		||||
 | 
			
		||||
import "cosmos_proto/cosmos.proto";
 | 
			
		||||
import "gogoproto/gogo.proto";
 | 
			
		||||
import "google/api/annotations.proto";
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/kava-labs/kava/x/validator-vesting/types";
 | 
			
		||||
option go_package = "github.com/0glabs/0g-chain/x/validator-vesting/types";
 | 
			
		||||
option (gogoproto.goproto_getters_all) = false;
 | 
			
		||||
 | 
			
		||||
// Query defines the gRPC querier service for validator-vesting module
 | 
			
		||||
service Query {
 | 
			
		||||
  // CirculatingSupply returns the total amount of kava tokens in circulation
 | 
			
		||||
  rpc CirculatingSupply(QueryCirculatingSupplyRequest) returns (QueryCirculatingSupplyResponse) {
 | 
			
		||||
    option (google.api.http).get = "/kava/validator-vesting/v1beta1/circulating_supply";
 | 
			
		||||
    option (google.api.http).get = "/0g/validator-vesting/v1beta1/circulating_supply";
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // TotalSupply returns the total amount of kava tokens
 | 
			
		||||
  rpc TotalSupply(QueryTotalSupplyRequest) returns (QueryTotalSupplyResponse) {
 | 
			
		||||
    option (google.api.http).get = "/kava/validator-vesting/v1beta1/total_supply";
 | 
			
		||||
    option (google.api.http).get = "/0g/validator-vesting/v1beta1/total_supply";
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // CirculatingSupplyHARD returns the total amount of hard tokens in circulation
 | 
			
		||||
  rpc CirculatingSupplyHARD(QueryCirculatingSupplyHARDRequest) returns (QueryCirculatingSupplyHARDResponse) {
 | 
			
		||||
    option (google.api.http).get = "/kava/validator-vesting/v1beta1/circulating_supply_hard";
 | 
			
		||||
    option (google.api.http).get = "/0g/validator-vesting/v1beta1/circulating_supply_hard";
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // CirculatingSupplyUSDX returns the total amount of usdx tokens in circulation
 | 
			
		||||
  rpc CirculatingSupplyUSDX(QueryCirculatingSupplyUSDXRequest) returns (QueryCirculatingSupplyUSDXResponse) {
 | 
			
		||||
    option (google.api.http).get = "/kava/validator-vesting/v1beta1/circulating_supply_usdx";
 | 
			
		||||
    option (google.api.http).get = "/0g/validator-vesting/v1beta1/circulating_supply_usdx";
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // CirculatingSupplySWP returns the total amount of swp tokens in circulation
 | 
			
		||||
  rpc CirculatingSupplySWP(QueryCirculatingSupplySWPRequest) returns (QueryCirculatingSupplySWPResponse) {
 | 
			
		||||
    option (google.api.http).get = "/kava/validator-vesting/v1beta1/circulating_supply_swp";
 | 
			
		||||
    option (google.api.http).get = "/0g/validator-vesting/v1beta1/circulating_supply_swp";
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // TotalSupplyHARD returns the total amount of hard tokens
 | 
			
		||||
  rpc TotalSupplyHARD(QueryTotalSupplyHARDRequest) returns (QueryTotalSupplyHARDResponse) {
 | 
			
		||||
    option (google.api.http).get = "/kava/validator-vesting/v1beta1/total_supply_hard";
 | 
			
		||||
    option (google.api.http).get = "/0g/validator-vesting/v1beta1/total_supply_hard";
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // TotalSupplyUSDX returns the total amount of usdx tokens
 | 
			
		||||
  rpc TotalSupplyUSDX(QueryTotalSupplyUSDXRequest) returns (QueryTotalSupplyUSDXResponse) {
 | 
			
		||||
    option (google.api.http).get = "/kava/validator-vesting/v1beta1/total_supply_usdx";
 | 
			
		||||
    option (google.api.http).get = "/0g/validator-vesting/v1beta1/total_supply_usdx";
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -6,7 +6,7 @@ import (
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
 | 
			
		||||
 | 
			
		||||
	evmutiltypes "github.com/kava-labs/kava/x/evmutil/types"
 | 
			
		||||
	evmutiltypes "github.com/0glabs/0g-chain/x/evmutil/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func (suite *IntegrationTestSuite) TestGrpcClientQueryCosmosModule_Balance() {
 | 
			
		||||
 | 
			
		||||
@ -549,80 +549,80 @@ func init() {
 | 
			
		||||
 | 
			
		||||
func init() { proto.RegisterFile("zgc/bep3/v1beta1/bep3.proto", fileDescriptor_0c5f13afadd81257) }
 | 
			
		||||
 | 
			
		||||
var fileDescriptor_01a01937d931b013 = []byte{
 | 
			
		||||
	// 1147 bytes of a gzipped FileDescriptorProto
 | 
			
		||||
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4d, 0x6f, 0x1a, 0x57,
 | 
			
		||||
	0x17, 0xf6, 0x18, 0x4c, 0xec, 0x03, 0x26, 0xbc, 0xd7, 0xc9, 0x1b, 0xec, 0xa4, 0x40, 0x9c, 0xaa,
 | 
			
		||||
	0x42, 0x51, 0x0d, 0xf9, 0x68, 0x77, 0x55, 0x55, 0x06, 0x70, 0x8c, 0xe4, 0x00, 0x1a, 0x6c, 0xf5,
 | 
			
		||||
	0x63, 0xd1, 0xe9, 0x9d, 0x99, 0x0b, 0x5c, 0x99, 0x99, 0x3b, 0x9a, 0x3b, 0x24, 0xf8, 0x1f, 0x74,
 | 
			
		||||
	0xd1, 0x45, 0xbb, 0xeb, 0xbe, 0xbb, 0x2e, 0xab, 0xfc, 0x88, 0x2c, 0xa3, 0xac, 0xaa, 0x2e, 0x9c,
 | 
			
		||||
	0xca, 0xf9, 0x17, 0xd9, 0xb4, 0xba, 0x1f, 0x06, 0x9c, 0xba, 0x15, 0x0b, 0x36, 0xf6, 0x9c, 0xaf,
 | 
			
		||||
	0xe7, 0x9c, 0xb9, 0x73, 0x9e, 0xe7, 0x02, 0x77, 0x4e, 0xf0, 0x33, 0x5c, 0x75, 0x48, 0xf8, 0xb8,
 | 
			
		||||
	0xfa, 0xec, 0xa1, 0x43, 0x62, 0xfc, 0x50, 0x1a, 0x95, 0x30, 0x62, 0x31, 0x43, 0xff, 0x13, 0xd1,
 | 
			
		||||
	0x8a, 0x74, 0xe8, 0xe8, 0x4e, 0xc1, 0x65, 0xdc, 0x67, 0xbc, 0xea, 0x60, 0x4e, 0xa6, 0x25, 0x2e,
 | 
			
		||||
	0xa3, 0x81, 0x2a, 0xd9, 0xd9, 0x56, 0x71, 0x5b, 0x5a, 0x55, 0x65, 0xe8, 0xd0, 0x8d, 0x01, 0x1b,
 | 
			
		||||
	0x30, 0xe5, 0x17, 0x4f, 0xda, 0x5b, 0x18, 0x30, 0x36, 0x18, 0x91, 0xaa, 0xb4, 0x9c, 0x71, 0xbf,
 | 
			
		||||
	0xea, 0x8d, 0x23, 0x1c, 0x53, 0xa6, 0x01, 0x77, 0x6d, 0x48, 0x75, 0x71, 0x84, 0x7d, 0x8e, 0x8e,
 | 
			
		||||
	0x21, 0x83, 0x39, 0x27, 0xb1, 0x1d, 0x4a, 0x3b, 0x6f, 0x94, 0x12, 0xe5, 0xf4, 0xa3, 0x0f, 0x2a,
 | 
			
		||||
	0xff, 0x18, 0xb2, 0x52, 0x13, 0x69, 0xb2, 0xca, 0xdc, 0x7a, 0x79, 0x56, 0x5c, 0xf9, 0xf5, 0x4d,
 | 
			
		||||
	0x31, 0x3d, 0xf3, 0x71, 0x2b, 0x8d, 0x67, 0xc6, 0xee, 0x0f, 0x6b, 0x00, 0xb3, 0x20, 0xba, 0x01,
 | 
			
		||||
	0x6b, 0x1e, 0x09, 0x98, 0x9f, 0x37, 0x4a, 0x46, 0x79, 0xc3, 0x52, 0x06, 0xba, 0x07, 0xd7, 0xc4,
 | 
			
		||||
	0x4b, 0xda, 0xd4, 0xcb, 0xaf, 0x96, 0x8c, 0x72, 0xc2, 0x84, 0xf3, 0xb3, 0x62, 0xaa, 0xce, 0x68,
 | 
			
		||||
	0xd0, 0x6a, 0x58, 0x29, 0x11, 0x6a, 0x79, 0xe8, 0x09, 0x64, 0xf8, 0x38, 0x0c, 0x47, 0xa7, 0xf6,
 | 
			
		||||
	0x88, 0xfa, 0x34, 0xce, 0x27, 0x4a, 0x46, 0x39, 0xfd, 0xa8, 0x70, 0xc5, 0x80, 0x3d, 0x99, 0x76,
 | 
			
		||||
	0x28, 0xb2, 0xcc, 0xa4, 0x98, 0xd0, 0x4a, 0xf3, 0x99, 0x0b, 0xfd, 0x1f, 0x52, 0xd8, 0x8d, 0xe9,
 | 
			
		||||
	0x33, 0x92, 0x4f, 0x96, 0x8c, 0xf2, 0xba, 0xa5, 0x2d, 0xc4, 0x20, 0xeb, 0x91, 0x70, 0x1c, 0x9f,
 | 
			
		||||
	0xda, 0xd8, 0xf3, 0x22, 0xc2, 0x79, 0x7e, 0xad, 0x64, 0x94, 0x33, 0xe6, 0xc1, 0xbb, 0xb3, 0xe2,
 | 
			
		||||
	0xde, 0x80, 0xc6, 0xc3, 0xb1, 0x53, 0x71, 0x99, 0xaf, 0x8f, 0x5d, 0xff, 0xdb, 0xe3, 0xde, 0x49,
 | 
			
		||||
	0x35, 0x3e, 0x0d, 0x09, 0xaf, 0xd4, 0x5c, 0xb7, 0xa6, 0x0a, 0x5f, 0xbf, 0xd8, 0xdb, 0xd2, 0x1f,
 | 
			
		||||
	0x47, 0x7b, 0xcc, 0xd3, 0x98, 0x70, 0x6b, 0x53, 0xe1, 0x6b, 0x1f, 0xfa, 0x1a, 0x36, 0xfa, 0x74,
 | 
			
		||||
	0x42, 0x3c, 0xbb, 0x4f, 0x48, 0x3e, 0x25, 0x0e, 0xc4, 0xfc, 0x4c, 0x8c, 0xfb, 0xc7, 0x59, 0xf1,
 | 
			
		||||
	0xa3, 0x05, 0xfa, 0xb5, 0x82, 0xf8, 0xf5, 0x8b, 0x3d, 0xd0, 0x8d, 0x5a, 0x41, 0x6c, 0xad, 0x4b,
 | 
			
		||||
	0xb8, 0x7d, 0x42, 0x90, 0x07, 0xd7, 0x7d, 0x1a, 0xd8, 0xfc, 0x39, 0x0e, 0x6d, 0xec, 0xb3, 0x71,
 | 
			
		||||
	0x10, 0xe7, 0xaf, 0x2d, 0xa1, 0xc1, 0xa6, 0x4f, 0x83, 0xde, 0x73, 0x1c, 0xd6, 0x24, 0xa4, 0xec,
 | 
			
		||||
	0x82, 0x27, 0x97, 0xba, 0xac, 0x2f, 0xa5, 0x0b, 0x9e, 0xcc, 0x75, 0xf9, 0x10, 0xb2, 0xe2, 0x5d,
 | 
			
		||||
	0x9c, 0x11, 0x73, 0x4f, 0x6c, 0xf1, 0x27, 0xbf, 0x51, 0x32, 0xca, 0x49, 0x2b, 0xe3, 0xd3, 0xc0,
 | 
			
		||||
	0x14, 0xf6, 0x21, 0x73, 0x4f, 0x64, 0x16, 0x9e, 0xcc, 0x67, 0x81, 0xce, 0xc2, 0x93, 0x69, 0xd6,
 | 
			
		||||
	0xee, 0x6f, 0xab, 0x90, 0x9e, 0x5b, 0x0f, 0x64, 0xc1, 0x9a, 0xda, 0x26, 0x63, 0x09, 0x73, 0x2b,
 | 
			
		||||
	0x28, 0x74, 0x17, 0x32, 0x31, 0xf5, 0x89, 0x5a, 0x53, 0xa2, 0x56, 0x7a, 0xdd, 0x4a, 0x0b, 0xdf,
 | 
			
		||||
	0xa1, 0x72, 0xa1, 0x06, 0x48, 0xd3, 0x0e, 0x49, 0x44, 0x99, 0xa7, 0x57, 0x79, 0xbb, 0xa2, 0xc8,
 | 
			
		||||
	0x5a, 0xb9, 0x20, 0x6b, 0xa5, 0xa1, 0xc9, 0x6a, 0xae, 0x8b, 0xb9, 0x7e, 0x7e, 0x53, 0x34, 0x2c,
 | 
			
		||||
	0x10, 0x75, 0x5d, 0x59, 0x86, 0xfa, 0x90, 0x93, 0x28, 0x42, 0x2d, 0x3c, 0xcd, 0x8a, 0xe4, 0x12,
 | 
			
		||||
	0xde, 0x23, 0x2b, 0x50, 0x4d, 0x01, 0x2a, 0xe7, 0xdd, 0xfd, 0x4b, 0x70, 0x38, 0x66, 0x3e, 0x75,
 | 
			
		||||
	0xc5, 0x57, 0x41, 0x2e, 0xa4, 0xf4, 0xc7, 0x56, 0x1a, 0xb1, 0x5d, 0xd1, 0xb5, 0x62, 0x8e, 0x29,
 | 
			
		||||
	0x09, 0x05, 0x7b, 0xcd, 0x07, 0x5a, 0x1f, 0xca, 0x0b, 0xcc, 0x21, 0x0a, 0xb8, 0xa5, 0xa1, 0x91,
 | 
			
		||||
	0x03, 0x28, 0xc2, 0x81, 0xc7, 0x7c, 0x3b, 0x18, 0xfb, 0x0e, 0x89, 0xec, 0x21, 0xe6, 0x43, 0x79,
 | 
			
		||||
	0x94, 0x19, 0xf3, 0x93, 0x77, 0x67, 0xc5, 0x07, 0x97, 0x10, 0x7d, 0x12, 0x3b, 0xfd, 0x78, 0xf6,
 | 
			
		||||
	0x30, 0xa2, 0x0e, 0xaf, 0x3a, 0x82, 0x73, 0x95, 0x03, 0x32, 0x51, 0xe4, 0xcb, 0x29, 0xbc, 0xb6,
 | 
			
		||||
	0x84, 0x3b, 0xc0, 0x7c, 0x88, 0xee, 0xc1, 0x26, 0x99, 0x84, 0x34, 0x22, 0xf6, 0x90, 0xd0, 0xc1,
 | 
			
		||||
	0x50, 0x49, 0x4a, 0xd2, 0xca, 0x28, 0xe7, 0x81, 0xf4, 0xa1, 0x3b, 0xb0, 0x21, 0x8e, 0x83, 0xc7,
 | 
			
		||||
	0xd8, 0x0f, 0xe5, 0xe9, 0x26, 0xac, 0x99, 0x03, 0x7d, 0x07, 0x29, 0x4e, 0x02, 0x8f, 0x44, 0x4b,
 | 
			
		||||
	0xd7, 0x0a, 0x8d, 0x8b, 0xfa, 0xb0, 0x11, 0x11, 0x97, 0x86, 0x94, 0x04, 0xb1, 0x14, 0x89, 0x65,
 | 
			
		||||
	0x36, 0x99, 0x41, 0xa3, 0x8f, 0x01, 0xa9, 0x8e, 0x36, 0x8b, 0x87, 0x24, 0xb2, 0xdd, 0x21, 0xa6,
 | 
			
		||||
	0x81, 0x12, 0x0d, 0x2b, 0xa7, 0x22, 0x1d, 0x11, 0xa8, 0x0b, 0x3f, 0x7a, 0x04, 0x37, 0xa7, 0xa5,
 | 
			
		||||
	0x97, 0x0a, 0x24, 0xff, 0xad, 0xad, 0x69, 0x70, 0xae, 0xe6, 0x2e, 0x64, 0xdc, 0x11, 0x13, 0xab,
 | 
			
		||||
	0xea, 0x4c, 0x59, 0x9c, 0xb0, 0xd2, 0xca, 0x27, 0x29, 0x8a, 0x3e, 0x85, 0x14, 0x8f, 0x71, 0x3c,
 | 
			
		||||
	0xe6, 0x92, 0xbc, 0xd9, 0x2b, 0xaf, 0x1f, 0xb1, 0x83, 0x3d, 0x99, 0x64, 0xe9, 0x64, 0x54, 0x84,
 | 
			
		||||
	0xb4, 0x1b, 0x31, 0xce, 0xf5, 0x0c, 0x69, 0x49, 0x38, 0x90, 0x2e, 0xd5, 0xfa, 0x73, 0xd8, 0xf0,
 | 
			
		||||
	0x68, 0x44, 0x5c, 0x41, 0xa6, 0x7c, 0x46, 0x42, 0x97, 0xfe, 0x05, 0xba, 0x71, 0x91, 0x67, 0xcd,
 | 
			
		||||
	0x4a, 0x76, 0x7f, 0x4a, 0x80, 0xba, 0xe2, 0x94, 0x76, 0xa0, 0x03, 0xb8, 0x4e, 0x03, 0x97, 0xf9,
 | 
			
		||||
	0x34, 0x18, 0xd8, 0xea, 0x6a, 0x91, 0x02, 0xf2, 0x9f, 0x5c, 0x50, 0x37, 0x51, 0xf6, 0xa2, 0x6e,
 | 
			
		||||
	0x86, 0xc4, 0xc6, 0xf1, 0x80, 0xcd, 0x21, 0xad, 0x2e, 0x88, 0x74, 0x51, 0xa7, 0x91, 0xf6, 0x21,
 | 
			
		||||
	0xeb, 0x8e, 0xa3, 0x48, 0x7c, 0x10, 0x0d, 0x94, 0x58, 0x0c, 0x68, 0x53, 0x97, 0x69, 0x9c, 0x6f,
 | 
			
		||||
	0xe1, 0xf6, 0xbc, 0x7c, 0xd9, 0xef, 0x81, 0x26, 0x17, 0x03, 0xcd, 0xcf, 0xc9, 0x5d, 0xfd, 0x12,
 | 
			
		||||
	0xfe, 0xbe, 0x96, 0x47, 0x32, 0xc2, 0x21, 0x27, 0x9e, 0x24, 0xce, 0x82, 0xe2, 0x27, 0x45, 0xb3,
 | 
			
		||||
	0xa9, 0xea, 0xee, 0x9f, 0x02, 0xcc, 0x56, 0x01, 0xdd, 0x86, 0x5b, 0xbd, 0x2f, 0x6b, 0x5d, 0xbb,
 | 
			
		||||
	0x77, 0x54, 0x3b, 0x3a, 0xee, 0xd9, 0xc7, 0xed, 0x5e, 0xb7, 0x59, 0x6f, 0xed, 0xb7, 0x9a, 0x8d,
 | 
			
		||||
	0xdc, 0x0a, 0xba, 0x01, 0xb9, 0xf9, 0x60, 0xa7, 0xdb, 0x6c, 0xe7, 0x0c, 0xb4, 0x0d, 0x37, 0xe7,
 | 
			
		||||
	0xbd, 0xf5, 0xce, 0xd3, 0xee, 0x61, 0xf3, 0xa8, 0xd9, 0xc8, 0xad, 0xa2, 0x5b, 0xb0, 0x35, 0x1f,
 | 
			
		||||
	0x6a, 0x7e, 0xd5, 0x6d, 0x59, 0xcd, 0x46, 0x2e, 0xb1, 0x93, 0xfc, 0xfe, 0x97, 0xc2, 0xca, 0x7d,
 | 
			
		||||
	0x06, 0x9b, 0x97, 0x56, 0x05, 0x15, 0x60, 0x47, 0xe6, 0x37, 0x5a, 0x56, 0xb3, 0x7e, 0xd4, 0xea,
 | 
			
		||||
	0xb4, 0xdf, 0x1b, 0xe0, 0x62, 0xba, 0x59, 0xbc, 0xd5, 0xae, 0x77, 0x9e, 0xb6, 0xda, 0x4f, 0x72,
 | 
			
		||||
	0xc6, 0x15, 0xc1, 0xce, 0xf1, 0xd1, 0x93, 0x8e, 0x08, 0xae, 0xaa, 0x86, 0xe6, 0x17, 0x2f, 0xcf,
 | 
			
		||||
	0x0b, 0xc6, 0xab, 0xf3, 0x82, 0xf1, 0xe7, 0x79, 0xc1, 0xf8, 0xf1, 0x6d, 0x61, 0xe5, 0xd5, 0xdb,
 | 
			
		||||
	0xc2, 0xca, 0xef, 0x6f, 0x0b, 0x2b, 0xdf, 0xcc, 0x2b, 0xbc, 0x58, 0xe8, 0xbd, 0x11, 0x76, 0xb8,
 | 
			
		||||
	0x7c, 0xaa, 0x4e, 0xd4, 0x2f, 0x4f, 0xa9, 0x05, 0x4e, 0x4a, 0x9e, 0xeb, 0xe3, 0xbf, 0x03, 0x00,
 | 
			
		||||
	0x00, 0xff, 0xff, 0x79, 0xfe, 0xe7, 0xb2, 0x93, 0x0a, 0x00, 0x00,
 | 
			
		||||
var fileDescriptor_0c5f13afadd81257 = []byte{
 | 
			
		||||
	// 1150 bytes of a gzipped FileDescriptorProto
 | 
			
		||||
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4d, 0x6f, 0x1a, 0x47,
 | 
			
		||||
	0x18, 0x66, 0x0d, 0x26, 0x66, 0xc0, 0x04, 0x8d, 0x93, 0x06, 0xdb, 0x29, 0x10, 0xa7, 0x6a, 0x51,
 | 
			
		||||
	0x54, 0x83, 0xe3, 0xe4, 0xd8, 0x1e, 0x58, 0xc0, 0x31, 0x92, 0x03, 0x68, 0xc1, 0xea, 0xc7, 0x21,
 | 
			
		||||
	0xdb, 0xd9, 0xdd, 0x61, 0x19, 0x99, 0xdd, 0x59, 0xed, 0x2c, 0x09, 0xce, 0x2f, 0xa8, 0xd4, 0x4b,
 | 
			
		||||
	0x7b, 0xeb, 0xbd, 0xb7, 0x1e, 0xab, 0xfc, 0x88, 0x1c, 0xa3, 0x9c, 0xaa, 0x1e, 0x9c, 0xca, 0xfe,
 | 
			
		||||
	0x17, 0x91, 0x2a, 0x55, 0xf3, 0x61, 0xc0, 0xae, 0x55, 0x71, 0xe0, 0x62, 0xef, 0xfb, 0xf5, 0xbc,
 | 
			
		||||
	0xef, 0xce, 0xbe, 0xcf, 0x33, 0x80, 0xed, 0xd7, 0xae, 0x5d, 0xb5, 0x70, 0xf0, 0xa4, 0xfa, 0xf2,
 | 
			
		||||
	0xb1, 0x85, 0x23, 0xf4, 0x58, 0x18, 0x95, 0x20, 0xa4, 0x11, 0x85, 0xb9, 0xd7, 0xae, 0x5d, 0x11,
 | 
			
		||||
	0xb6, 0x0a, 0x6e, 0x15, 0x6c, 0xca, 0x3c, 0xca, 0xaa, 0x16, 0x62, 0x78, 0x5a, 0x61, 0x53, 0xe2,
 | 
			
		||||
	0xcb, 0x8a, 0xad, 0x4d, 0x19, 0x37, 0x85, 0x55, 0x95, 0x86, 0x0a, 0xdd, 0x71, 0xa9, 0x4b, 0xa5,
 | 
			
		||||
	0x9f, 0x3f, 0x29, 0x6f, 0xc1, 0xa5, 0xd4, 0x1d, 0xe1, 0xaa, 0xb0, 0xac, 0xf1, 0xa0, 0xea, 0x8c,
 | 
			
		||||
	0x43, 0x14, 0x11, 0xaa, 0x00, 0x77, 0x5e, 0x80, 0x64, 0x17, 0x85, 0xc8, 0x63, 0xb0, 0x0f, 0x32,
 | 
			
		||||
	0x88, 0x31, 0x1c, 0x99, 0x81, 0xb0, 0xf3, 0x5a, 0x29, 0x5e, 0x4e, 0xef, 0xdf, 0xaf, 0x5c, 0x9f,
 | 
			
		||||
	0xb1, 0x52, 0xe3, 0x59, 0xa2, 0x48, 0xdf, 0x78, 0x7b, 0x56, 0x8c, 0xfd, 0xfe, 0xa1, 0x98, 0x9e,
 | 
			
		||||
	0xf9, 0x98, 0x91, 0x46, 0x33, 0x63, 0xe7, 0xa7, 0x55, 0x00, 0x66, 0x41, 0x78, 0x07, 0xac, 0x3a,
 | 
			
		||||
	0xd8, 0xa7, 0x5e, 0x5e, 0x2b, 0x69, 0xe5, 0x94, 0x21, 0x0d, 0xf8, 0x10, 0xdc, 0xe2, 0xef, 0x68,
 | 
			
		||||
	0x12, 0x27, 0xbf, 0x52, 0xd2, 0xca, 0x71, 0x1d, 0x9c, 0x9f, 0x15, 0x93, 0x75, 0x4a, 0xfc, 0x56,
 | 
			
		||||
	0xc3, 0x48, 0xf2, 0x50, 0xcb, 0x81, 0x07, 0x20, 0xc3, 0xc6, 0x41, 0x30, 0x3a, 0x35, 0x47, 0xc4,
 | 
			
		||||
	0x23, 0x51, 0x3e, 0x5e, 0xd2, 0xca, 0xe9, 0xfd, 0x4f, 0xff, 0x3b, 0x5f, 0x4f, 0x64, 0x1d, 0xf1,
 | 
			
		||||
	0x24, 0x3d, 0xc1, 0x07, 0x34, 0xd2, 0x6c, 0xe6, 0x82, 0x9f, 0x80, 0x24, 0xb2, 0x23, 0xf2, 0x12,
 | 
			
		||||
	0xe7, 0x13, 0x25, 0xad, 0xbc, 0x66, 0x28, 0x0b, 0x52, 0x90, 0x75, 0x70, 0x30, 0x8e, 0x4e, 0x4d,
 | 
			
		||||
	0xe4, 0x38, 0x21, 0x66, 0x2c, 0xbf, 0x5a, 0xd2, 0xca, 0x19, 0xfd, 0xf0, 0xe3, 0x59, 0x71, 0xd7,
 | 
			
		||||
	0x25, 0xd1, 0x70, 0x6c, 0x55, 0x6c, 0xea, 0xa9, 0x43, 0x57, 0xff, 0x76, 0x99, 0x73, 0x52, 0x8d,
 | 
			
		||||
	0x4e, 0x03, 0xcc, 0x2a, 0x35, 0xdb, 0xae, 0xc9, 0xc2, 0xf7, 0x6f, 0x76, 0x37, 0xd4, 0xa7, 0x51,
 | 
			
		||||
	0x1e, 0xfd, 0x34, 0xc2, 0xcc, 0x58, 0x97, 0xf8, 0xca, 0x07, 0xbf, 0x03, 0xa9, 0x01, 0x99, 0x60,
 | 
			
		||||
	0xc7, 0x1c, 0x60, 0x9c, 0x4f, 0xf2, 0xf3, 0xd0, 0xbf, 0xe2, 0xe3, 0xfe, 0x75, 0x56, 0xfc, 0x7c,
 | 
			
		||||
	0x81, 0x7e, 0x2d, 0x3f, 0x7a, 0xff, 0x66, 0x17, 0xa8, 0x46, 0x2d, 0x3f, 0x32, 0xd6, 0x04, 0xdc,
 | 
			
		||||
	0x01, 0xc6, 0xd0, 0x01, 0xb7, 0x3d, 0xe2, 0x9b, 0xec, 0x15, 0x0a, 0x4c, 0xe4, 0xd1, 0xb1, 0x1f,
 | 
			
		||||
	0xe5, 0x6f, 0x2d, 0xa1, 0xc1, 0xba, 0x47, 0xfc, 0xde, 0x2b, 0x14, 0xd4, 0x04, 0xa4, 0xe8, 0x82,
 | 
			
		||||
	0x26, 0x57, 0xba, 0xac, 0x2d, 0xa5, 0x0b, 0x9a, 0xcc, 0x75, 0xf9, 0x0c, 0x64, 0xf9, 0xbb, 0x58,
 | 
			
		||||
	0x23, 0x6a, 0x9f, 0x98, 0xfc, 0x4f, 0x3e, 0x55, 0xd2, 0xca, 0x09, 0x23, 0xe3, 0x11, 0x5f, 0xe7,
 | 
			
		||||
	0xf6, 0x11, 0xb5, 0x4f, 0x44, 0x16, 0x9a, 0xcc, 0x67, 0x01, 0x95, 0x85, 0x26, 0xd3, 0xac, 0x9d,
 | 
			
		||||
	0x3f, 0x56, 0x40, 0x7a, 0x6e, 0x3d, 0xa0, 0x01, 0x56, 0xe5, 0x32, 0x69, 0x4b, 0x98, 0x5b, 0x42,
 | 
			
		||||
	0xc1, 0x07, 0x20, 0x13, 0x11, 0x0f, 0xcb, 0x2d, 0xc5, 0x72, 0xa3, 0xd7, 0x8c, 0x34, 0xf7, 0x1d,
 | 
			
		||||
	0x49, 0x17, 0x6c, 0x00, 0x61, 0x9a, 0x01, 0x0e, 0x09, 0x75, 0xd4, 0x26, 0x6f, 0x56, 0x24, 0x55,
 | 
			
		||||
	0x2b, 0x97, 0x54, 0xad, 0x34, 0x14, 0x55, 0xf5, 0x35, 0x3e, 0xd7, 0xaf, 0x1f, 0x8a, 0x9a, 0x01,
 | 
			
		||||
	0x78, 0x5d, 0x57, 0x94, 0xc1, 0x01, 0xc8, 0x09, 0x14, 0xae, 0x15, 0x8e, 0x22, 0x45, 0x62, 0x09,
 | 
			
		||||
	0xef, 0x91, 0xe5, 0xa8, 0x3a, 0x07, 0x15, 0xf3, 0xee, 0xfc, 0xc3, 0x29, 0x1c, 0x51, 0x8f, 0xd8,
 | 
			
		||||
	0xfc, 0xab, 0x40, 0x1b, 0x24, 0xd5, 0xc7, 0x96, 0x0a, 0xb1, 0x59, 0x51, 0xb5, 0x7c, 0x8e, 0x29,
 | 
			
		||||
	0x09, 0x39, 0x79, 0xf5, 0x3d, 0x25, 0x0f, 0xe5, 0x05, 0xe6, 0xe0, 0x05, 0xcc, 0x50, 0xd0, 0xd0,
 | 
			
		||||
	0x02, 0x30, 0x44, 0xbe, 0x43, 0x3d, 0xd3, 0x1f, 0x7b, 0x16, 0x0e, 0xcd, 0x21, 0x62, 0x43, 0x71,
 | 
			
		||||
	0x94, 0x19, 0xfd, 0xe9, 0xc7, 0xb3, 0xe2, 0xde, 0x15, 0x44, 0x0f, 0x47, 0xd6, 0x20, 0x9a, 0x3d,
 | 
			
		||||
	0x8c, 0x88, 0xc5, 0xaa, 0x16, 0xe7, 0x5c, 0xe5, 0x10, 0x4f, 0x24, 0xf9, 0x72, 0x12, 0xaf, 0x2d,
 | 
			
		||||
	0xe0, 0x0e, 0x11, 0x1b, 0xc2, 0x87, 0x60, 0x1d, 0x4f, 0x02, 0x12, 0x62, 0x73, 0x88, 0x89, 0x3b,
 | 
			
		||||
	0x94, 0x8a, 0x92, 0x30, 0x32, 0xd2, 0x79, 0x28, 0x7c, 0xf0, 0x3e, 0x48, 0xf1, 0xe3, 0x60, 0x11,
 | 
			
		||||
	0xf2, 0x02, 0x71, 0xba, 0x71, 0x63, 0xe6, 0x80, 0x3f, 0x80, 0x24, 0xc3, 0xbe, 0x83, 0xc3, 0xa5,
 | 
			
		||||
	0x6b, 0x85, 0xc2, 0x85, 0x03, 0x90, 0x0a, 0xb1, 0x4d, 0x02, 0x82, 0xfd, 0x48, 0x88, 0xc4, 0x32,
 | 
			
		||||
	0x9b, 0xcc, 0xa0, 0xe1, 0x97, 0x00, 0xca, 0x8e, 0x26, 0x8d, 0x86, 0x38, 0x34, 0xed, 0x21, 0x22,
 | 
			
		||||
	0xbe, 0x14, 0x0d, 0x23, 0x27, 0x23, 0x1d, 0x1e, 0xa8, 0x73, 0x3f, 0xdc, 0x07, 0x77, 0xa7, 0xa5,
 | 
			
		||||
	0x57, 0x0a, 0x04, 0xff, 0x8d, 0x8d, 0x69, 0x70, 0xae, 0xe6, 0x01, 0xc8, 0xd8, 0x23, 0xca, 0x57,
 | 
			
		||||
	0xd5, 0x9a, 0xb2, 0x38, 0x6e, 0xa4, 0xa5, 0x4f, 0x50, 0x14, 0x3e, 0x05, 0x49, 0x16, 0xa1, 0x68,
 | 
			
		||||
	0xcc, 0x04, 0x79, 0xb3, 0x37, 0x5d, 0x3e, 0x7c, 0x05, 0x7b, 0x22, 0xc7, 0x50, 0xb9, 0xb0, 0x08,
 | 
			
		||||
	0xd2, 0x76, 0x48, 0x19, 0x53, 0x23, 0xa4, 0x05, 0xdf, 0x80, 0x70, 0xc9, 0xce, 0x5f, 0x83, 0x94,
 | 
			
		||||
	0x43, 0x42, 0x6c, 0x73, 0x2e, 0xe5, 0x33, 0x02, 0xb9, 0x78, 0x33, 0x72, 0xe3, 0x32, 0xcd, 0x98,
 | 
			
		||||
	0x55, 0xec, 0xfc, 0x12, 0x07, 0xf2, 0x7e, 0x93, 0xca, 0x01, 0x0f, 0xc1, 0x6d, 0xe2, 0xdb, 0xd4,
 | 
			
		||||
	0x23, 0xbe, 0x6b, 0xca, 0x8b, 0x45, 0xc8, 0xc7, 0xff, 0x32, 0x41, 0xde, 0x43, 0xd9, 0xcb, 0xba,
 | 
			
		||||
	0x19, 0x12, 0x1d, 0x47, 0x2e, 0x9d, 0x43, 0x5a, 0x59, 0x10, 0xe9, 0xb2, 0x4e, 0x21, 0x1d, 0x80,
 | 
			
		||||
	0xac, 0x3d, 0x0e, 0x43, 0xfe, 0x39, 0x14, 0x50, 0x7c, 0x31, 0xa0, 0x75, 0x55, 0xa6, 0x70, 0x5e,
 | 
			
		||||
	0x80, 0xed, 0x79, 0xf1, 0x32, 0xaf, 0x81, 0x26, 0x16, 0x03, 0xcd, 0xcf, 0x89, 0x5d, 0xfd, 0x0a,
 | 
			
		||||
	0xfe, 0x81, 0x12, 0x47, 0x3c, 0x42, 0x01, 0xc3, 0x8e, 0xa0, 0xcd, 0x82, 0xd2, 0x27, 0x24, 0xb3,
 | 
			
		||||
	0x29, 0xeb, 0x1e, 0x9d, 0x02, 0x30, 0xdb, 0x04, 0xb8, 0x0d, 0xee, 0xf5, 0xbe, 0xa9, 0x75, 0xcd,
 | 
			
		||||
	0x5e, 0xbf, 0xd6, 0x3f, 0xee, 0x99, 0xc7, 0xed, 0x5e, 0xb7, 0x59, 0x6f, 0x1d, 0xb4, 0x9a, 0x8d,
 | 
			
		||||
	0x5c, 0x0c, 0xde, 0x01, 0xb9, 0xf9, 0x60, 0xa7, 0xdb, 0x6c, 0xe7, 0x34, 0xb8, 0x09, 0xee, 0xce,
 | 
			
		||||
	0x7b, 0xeb, 0x9d, 0xe7, 0xdd, 0xa3, 0x66, 0xbf, 0xd9, 0xc8, 0xad, 0xc0, 0x7b, 0x60, 0x63, 0x3e,
 | 
			
		||||
	0xd4, 0xfc, 0xb6, 0xdb, 0x32, 0x9a, 0x8d, 0x5c, 0x7c, 0x2b, 0xf1, 0xe3, 0x6f, 0x85, 0xd8, 0x23,
 | 
			
		||||
	0x0a, 0xd6, 0xaf, 0xac, 0x0a, 0x2c, 0x80, 0x2d, 0x91, 0xdf, 0x68, 0x19, 0xcd, 0x7a, 0xbf, 0xd5,
 | 
			
		||||
	0x69, 0x5f, 0x1b, 0xe0, 0x72, 0xba, 0x59, 0xbc, 0xd5, 0xae, 0x77, 0x9e, 0xb7, 0xda, 0xcf, 0x72,
 | 
			
		||||
	0xda, 0x0d, 0xc1, 0xce, 0x71, 0xff, 0x59, 0x87, 0x07, 0x57, 0x64, 0x43, 0xbd, 0xf6, 0xf6, 0xbc,
 | 
			
		||||
	0xa0, 0xbd, 0x3b, 0x2f, 0x68, 0x7f, 0x9f, 0x17, 0xb4, 0x9f, 0x2f, 0x0a, 0xb1, 0x77, 0x17, 0x85,
 | 
			
		||||
	0xd8, 0x9f, 0x17, 0x85, 0xd8, 0xf7, 0x5f, 0xcc, 0xa9, 0xc0, 0x9e, 0x3b, 0x42, 0x16, 0xab, 0xee,
 | 
			
		||||
	0xb9, 0xbb, 0x82, 0x06, 0xd5, 0x89, 0xfc, 0xd5, 0x29, 0xa4, 0xc0, 0x4a, 0x8a, 0x83, 0x7d, 0xf2,
 | 
			
		||||
	0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd7, 0xf8, 0xaf, 0x5c, 0x8e, 0x0a, 0x00, 0x00,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *Params) Marshal() (dAtA []byte, err error) {
 | 
			
		||||
 | 
			
		||||
@ -479,15 +479,15 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "bep3", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "bep3", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_AssetSupply_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "bep3", "v1beta1", "assetsupply", "denom"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_AssetSupply_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "bep3", "v1beta1", "assetsupply", "denom"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_AssetSupplies_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "bep3", "v1beta1", "assetsupplies"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_AssetSupplies_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "bep3", "v1beta1", "assetsupplies"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_AtomicSwap_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "bep3", "v1beta1", "atomicswap", "swap_id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_AtomicSwap_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "bep3", "v1beta1", "atomicswap", "swap_id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_AtomicSwaps_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "bep3", "v1beta1", "atomicswaps"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_AtomicSwaps_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "bep3", "v1beta1", "atomicswaps"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -3,7 +3,6 @@ package v2
 | 
			
		||||
import (
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	paramtypes "github.com/cosmos/cosmos-sdk/x/params/types"
 | 
			
		||||
	"github.com/kava-labs/kava/x/cdp/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// MigrateStore performs in-place store migrations for consensus version 2
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,6 @@ import (
 | 
			
		||||
	paramtypes "github.com/cosmos/cosmos-sdk/x/params/types"
 | 
			
		||||
 | 
			
		||||
	v2cdp "github.com/kava-labs/kava/x/cdp/migrations/v2"
 | 
			
		||||
	"github.com/kava-labs/kava/x/cdp/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func TestStoreMigrationAddsKeyTableIncludingNewParam(t *testing.T) {
 | 
			
		||||
 | 
			
		||||
@ -889,23 +889,23 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_Committees_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "committees"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Committees_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "committees"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Committee_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "committee", "v1beta1", "committees", "committee_id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Committee_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "committee", "v1beta1", "committees", "committee_id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Proposals_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "proposals"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Proposals_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "proposals"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Proposal_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Proposal_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_NextProposalID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "next-proposal-id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_NextProposalID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "next-proposal-id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Votes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id", "votes"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Votes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id", "votes"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Vote_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5, 1, 0, 4, 1, 5, 6}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id", "votes", "voter"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Vote_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5, 1, 0, 4, 1, 5, 6}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id", "votes", "voter"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Tally_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id", "tally"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Tally_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4, 2, 5}, []string{"0g", "committee", "v1beta1", "proposals", "proposal_id", "tally"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_RawParams_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "raw-params"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_RawParams_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "committee", "v1beta1", "raw-params"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -3,8 +3,8 @@ package keeper
 | 
			
		||||
import (
 | 
			
		||||
	"sort"
 | 
			
		||||
 | 
			
		||||
	abci "github.com/cometbft/cometbft/abci/types"
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	abci "github.com/tendermint/tendermint/abci/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Ballot struct {
 | 
			
		||||
 | 
			
		||||
@ -4,12 +4,12 @@ import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	errorsmod "cosmossdk.io/errors"
 | 
			
		||||
	"github.com/cometbft/cometbft/libs/log"
 | 
			
		||||
	"github.com/coniks-sys/coniks-go/crypto/vrf"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/codec"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/store/prefix"
 | 
			
		||||
	storetypes "github.com/cosmos/cosmos-sdk/store/types"
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	"github.com/tendermint/tendermint/libs/log"
 | 
			
		||||
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/council/v1/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@ -5,6 +5,7 @@ import (
 | 
			
		||||
	"encoding/json"
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	abci "github.com/cometbft/cometbft/abci/types"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/client"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/codec"
 | 
			
		||||
	codectypes "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
@ -15,7 +16,6 @@ import (
 | 
			
		||||
	"github.com/gorilla/mux"
 | 
			
		||||
	"github.com/grpc-ecosystem/grpc-gateway/runtime"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
	abci "github.com/tendermint/tendermint/abci/types"
 | 
			
		||||
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/council/v1/client/cli"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/council/v1/keeper"
 | 
			
		||||
@ -117,17 +117,9 @@ func (AppModule) Name() string {
 | 
			
		||||
	return types.ModuleName
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Route returns evmutil module's message route.
 | 
			
		||||
func (am AppModule) Route() sdk.Route { return sdk.Route{} }
 | 
			
		||||
 | 
			
		||||
// QuerierRoute returns evmutil module's query routing key.
 | 
			
		||||
func (AppModule) QuerierRoute() string { return "" }
 | 
			
		||||
 | 
			
		||||
// LegacyQuerierHandler returns evmutil module's Querier.
 | 
			
		||||
func (am AppModule) LegacyQuerierHandler(legacyQuerierCdc *codec.LegacyAmino) sdk.Querier {
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// RegisterInvariants registers the inflation module invariants.
 | 
			
		||||
func (am AppModule) RegisterInvariants(_ sdk.InvariantRegistry) {}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -8,8 +8,8 @@ import (
 | 
			
		||||
	_ "github.com/cosmos/cosmos-proto"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
	github_com_cosmos_cosmos_sdk_types "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	_ "google.golang.org/protobuf/types/known/timestamppb"
 | 
			
		||||
	io "io"
 | 
			
		||||
	math "math"
 | 
			
		||||
 | 
			
		||||
@ -8,9 +8,9 @@ import (
 | 
			
		||||
	fmt "fmt"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-proto"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	grpc1 "github.com/gogo/protobuf/grpc"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	grpc1 "github.com/cosmos/gogoproto/grpc"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	_ "google.golang.org/genproto/googleapis/api/annotations"
 | 
			
		||||
	grpc "google.golang.org/grpc"
 | 
			
		||||
	codes "google.golang.org/grpc/codes"
 | 
			
		||||
 | 
			
		||||
@ -206,9 +206,9 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_CurrentCouncilID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0gchain", "council", "v1", "current-council-id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_CurrentCouncilID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0gchain", "council", "v1", "current-council-id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_RegisteredVoters_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0gchain", "council", "v1", "registered-voters"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_RegisteredVoters_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0gchain", "council", "v1", "registered-voters"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -8,9 +8,9 @@ import (
 | 
			
		||||
	fmt "fmt"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-proto"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	grpc1 "github.com/gogo/protobuf/grpc"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	grpc1 "github.com/cosmos/gogoproto/grpc"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	grpc "google.golang.org/grpc"
 | 
			
		||||
	codes "google.golang.org/grpc/codes"
 | 
			
		||||
	status "google.golang.org/grpc/status"
 | 
			
		||||
 | 
			
		||||
@ -6,9 +6,9 @@ import (
 | 
			
		||||
	"sort"
 | 
			
		||||
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/dasigners/v1/types"
 | 
			
		||||
	abci "github.com/cometbft/cometbft/abci/types"
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	"github.com/ethereum/go-ethereum/crypto"
 | 
			
		||||
	abci "github.com/tendermint/tendermint/abci/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Ballot struct {
 | 
			
		||||
 | 
			
		||||
@ -5,12 +5,12 @@ import (
 | 
			
		||||
	"math/big"
 | 
			
		||||
 | 
			
		||||
	"cosmossdk.io/math"
 | 
			
		||||
	"github.com/cometbft/cometbft/libs/log"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/codec"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/store/prefix"
 | 
			
		||||
	storetypes "github.com/cosmos/cosmos-sdk/store/types"
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
 | 
			
		||||
	"github.com/tendermint/tendermint/libs/log"
 | 
			
		||||
 | 
			
		||||
	"github.com/0glabs/0g-chain/chaincfg"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/dasigners/v1/types"
 | 
			
		||||
 | 
			
		||||
@ -5,6 +5,7 @@ import (
 | 
			
		||||
	"encoding/json"
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	abci "github.com/cometbft/cometbft/abci/types"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/client"
 | 
			
		||||
	"github.com/cosmos/cosmos-sdk/codec"
 | 
			
		||||
	codectypes "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
@ -15,7 +16,6 @@ import (
 | 
			
		||||
	"github.com/gorilla/mux"
 | 
			
		||||
	"github.com/grpc-ecosystem/grpc-gateway/runtime"
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
	abci "github.com/tendermint/tendermint/abci/types"
 | 
			
		||||
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/dasigners/v1/client/cli"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/dasigners/v1/keeper"
 | 
			
		||||
@ -116,17 +116,9 @@ func (AppModule) Name() string {
 | 
			
		||||
	return types.ModuleName
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Route returns dasigners module's message route.
 | 
			
		||||
func (am AppModule) Route() sdk.Route { return sdk.Route{} }
 | 
			
		||||
 | 
			
		||||
// QuerierRoute returns dasigners module's query routing key.
 | 
			
		||||
func (AppModule) QuerierRoute() string { return types.QuerierRoute }
 | 
			
		||||
 | 
			
		||||
// LegacyQuerierHandler returns dasigners module's Querier.
 | 
			
		||||
func (am AppModule) LegacyQuerierHandler(legacyQuerierCdc *codec.LegacyAmino) sdk.Querier {
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// RegisterInvariants registers the inflation module invariants.
 | 
			
		||||
func (am AppModule) RegisterInvariants(_ sdk.InvariantRegistry) {}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -7,8 +7,8 @@ import (
 | 
			
		||||
	fmt "fmt"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-proto"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	_ "google.golang.org/protobuf/types/known/durationpb"
 | 
			
		||||
	io "io"
 | 
			
		||||
	math "math"
 | 
			
		||||
 | 
			
		||||
@ -7,8 +7,8 @@ import (
 | 
			
		||||
	fmt "fmt"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-proto"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	_ "google.golang.org/protobuf/types/known/timestamppb"
 | 
			
		||||
	io "io"
 | 
			
		||||
	math "math"
 | 
			
		||||
 | 
			
		||||
@ -8,9 +8,9 @@ import (
 | 
			
		||||
	fmt "fmt"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-proto"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	grpc1 "github.com/gogo/protobuf/grpc"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	grpc1 "github.com/cosmos/gogoproto/grpc"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	_ "google.golang.org/genproto/googleapis/api/annotations"
 | 
			
		||||
	grpc "google.golang.org/grpc"
 | 
			
		||||
	codes "google.golang.org/grpc/codes"
 | 
			
		||||
 | 
			
		||||
@ -540,17 +540,17 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_EpochNumber_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "epoch-number"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_EpochNumber_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "epoch-number"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_QuorumCount_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "quorum-count"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_QuorumCount_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "quorum-count"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_EpochQuorum_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "epoch-quorum"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_EpochQuorum_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "epoch-quorum"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_EpochQuorumRow_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "epoch-quorum-row"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_EpochQuorumRow_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "epoch-quorum-row"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_AggregatePubkeyG1_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "aggregate-pubkey-g1"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_AggregatePubkeyG1_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "aggregate-pubkey-g1"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Signer_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "signer"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Signer_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "dasigners", "v1", "signer"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -8,9 +8,9 @@ import (
 | 
			
		||||
	fmt "fmt"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-proto"
 | 
			
		||||
	_ "github.com/cosmos/cosmos-sdk/codec/types"
 | 
			
		||||
	_ "github.com/gogo/protobuf/gogoproto"
 | 
			
		||||
	grpc1 "github.com/gogo/protobuf/grpc"
 | 
			
		||||
	proto "github.com/gogo/protobuf/proto"
 | 
			
		||||
	_ "github.com/cosmos/gogoproto/gogoproto"
 | 
			
		||||
	grpc1 "github.com/cosmos/gogoproto/grpc"
 | 
			
		||||
	proto "github.com/cosmos/gogoproto/proto"
 | 
			
		||||
	grpc "google.golang.org/grpc"
 | 
			
		||||
	codes "google.golang.org/grpc/codes"
 | 
			
		||||
	status "google.golang.org/grpc/status"
 | 
			
		||||
 | 
			
		||||
@ -164,6 +164,16 @@ func (k EvmBankKeeper) BurnCoins(ctx sdk.Context, moduleName string, amt sdk.Coi
 | 
			
		||||
	return k.evmDenomKeeper.RemoveBalance(ctx, moduleAddr, baseDemonCnt)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsSendEnabledCoins checks the coins provided and returns an ErrSendDisabled
 | 
			
		||||
// if any of the coins are not configured for sending. Returns nil if sending is
 | 
			
		||||
// enabled for all provided coins.
 | 
			
		||||
func (k EvmBankKeeper) IsSendEnabledCoins(ctx sdk.Context, coins ...sdk.Coin) error {
 | 
			
		||||
	// IsSendEnabledCoins method is not used by the evm module, but is required by the
 | 
			
		||||
	// evmtypes.BankKeeper interface. This must be updated if the evm module
 | 
			
		||||
	// is updated to use IsSendEnabledCoins.
 | 
			
		||||
	panic("not implemented")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ConvertOnegasDenomToEvmDenomIfNeeded converts 1 gas denom to evm denom for an address if
 | 
			
		||||
// its evm denom balance is smaller than the evmDenomCnt amount.
 | 
			
		||||
func (k EvmBankKeeper) ConvertOneGasDenomToEvmDenomIfNeeded(ctx sdk.Context, addr sdk.AccAddress, evmDenomCnt sdkmath.Int) error {
 | 
			
		||||
 | 
			
		||||
@ -23,7 +23,6 @@ import (
 | 
			
		||||
	vesting "github.com/cosmos/cosmos-sdk/x/auth/vesting/types"
 | 
			
		||||
	evmtypes "github.com/evmos/ethermint/x/evm/types"
 | 
			
		||||
	"github.com/stretchr/testify/suite"
 | 
			
		||||
	tmtime "github.com/tendermint/tendermint/types/time"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type evmBankKeeperTestSuite struct {
 | 
			
		||||
 | 
			
		||||
@ -4,7 +4,7 @@ import (
 | 
			
		||||
	"math/big"
 | 
			
		||||
 | 
			
		||||
	errorsmod "cosmossdk.io/errors"
 | 
			
		||||
	"github.com/kava-labs/kava/x/evmutil/types"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/evmutil/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -8,8 +8,8 @@ import (
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	"github.com/stretchr/testify/suite"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/x/evmutil/testutil"
 | 
			
		||||
	"github.com/kava-labs/kava/x/evmutil/types"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/evmutil/testutil"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/evmutil/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Bep3ConversionTestSuite struct {
 | 
			
		||||
 | 
			
		||||
@ -4,8 +4,8 @@ import (
 | 
			
		||||
	sdkmath "cosmossdk.io/math"
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/x/evmutil/testutil"
 | 
			
		||||
	"github.com/kava-labs/kava/x/evmutil/types"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/evmutil/testutil"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/evmutil/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func (suite *MsgServerSuite) TestConvertCoinToERC20_Bep3() {
 | 
			
		||||
 | 
			
		||||
@ -224,9 +224,9 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "evmutil", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "evmutil", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_DeployedCosmosCoinContracts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "evmutil", "v1beta1", "deployed_cosmos_coin_contracts"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_DeployedCosmosCoinContracts_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "evmutil", "v1beta1", "deployed_cosmos_coin_contracts"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -145,7 +145,7 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "issuance", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "issuance", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -558,17 +558,17 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "pricefeed", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Params_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "pricefeed", "v1beta1", "params"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Price_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "pricefeed", "v1beta1", "prices", "market_id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Price_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "pricefeed", "v1beta1", "prices", "market_id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Prices_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "pricefeed", "v1beta1", "prices"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Prices_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "pricefeed", "v1beta1", "prices"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_RawPrices_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "pricefeed", "v1beta1", "rawprices", "market_id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_RawPrices_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "pricefeed", "v1beta1", "rawprices", "market_id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Oracles_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "pricefeed", "v1beta1", "oracles", "market_id"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Oracles_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 1, 0, 4, 1, 5, 4}, []string{"0g", "pricefeed", "v1beta1", "oracles", "market_id"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_Markets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "pricefeed", "v1beta1", "markets"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_Markets_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "pricefeed", "v1beta1", "markets"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
@ -5,8 +5,8 @@ import (
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	sdkmath "cosmossdk.io/math"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/validator-vesting/types"
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	"github.com/kava-labs/kava/x/validator-vesting/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type queryServer struct {
 | 
			
		||||
 | 
			
		||||
@ -11,9 +11,9 @@ import (
 | 
			
		||||
	sdk "github.com/cosmos/cosmos-sdk/types"
 | 
			
		||||
	"github.com/stretchr/testify/suite"
 | 
			
		||||
 | 
			
		||||
	"github.com/kava-labs/kava/app"
 | 
			
		||||
	"github.com/kava-labs/kava/x/validator-vesting/keeper"
 | 
			
		||||
	"github.com/kava-labs/kava/x/validator-vesting/types"
 | 
			
		||||
	"github.com/0glabs/0g-chain/app"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/validator-vesting/keeper"
 | 
			
		||||
	"github.com/0glabs/0g-chain/x/validator-vesting/types"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type grpcQueryTestSuite struct {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
// Code generated by protoc-gen-gogo. DO NOT EDIT.
 | 
			
		||||
// source: kava/validatorvesting/v1beta1/query.proto
 | 
			
		||||
// source: zg/validatorvesting/v1beta1/query.proto
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
 | 
			
		||||
@ -39,7 +39,7 @@ func (m *QueryCirculatingSupplyRequest) Reset()         { *m = QueryCirculatingS
 | 
			
		||||
func (m *QueryCirculatingSupplyRequest) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplyRequest) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplyRequest) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{0}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{0}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplyRequest) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -77,7 +77,7 @@ func (m *QueryCirculatingSupplyResponse) Reset()         { *m = QueryCirculating
 | 
			
		||||
func (m *QueryCirculatingSupplyResponse) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplyResponse) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplyResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{1}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{1}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplyResponse) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -114,7 +114,7 @@ func (m *QueryTotalSupplyRequest) Reset()         { *m = QueryTotalSupplyRequest
 | 
			
		||||
func (m *QueryTotalSupplyRequest) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryTotalSupplyRequest) ProtoMessage()    {}
 | 
			
		||||
func (*QueryTotalSupplyRequest) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{2}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{2}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryTotalSupplyRequest) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -152,7 +152,7 @@ func (m *QueryTotalSupplyResponse) Reset()         { *m = QueryTotalSupplyRespon
 | 
			
		||||
func (m *QueryTotalSupplyResponse) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryTotalSupplyResponse) ProtoMessage()    {}
 | 
			
		||||
func (*QueryTotalSupplyResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{3}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{3}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryTotalSupplyResponse) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -189,7 +189,7 @@ func (m *QueryCirculatingSupplyHARDRequest) Reset()         { *m = QueryCirculat
 | 
			
		||||
func (m *QueryCirculatingSupplyHARDRequest) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplyHARDRequest) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplyHARDRequest) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{4}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{4}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplyHARDRequest) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -227,7 +227,7 @@ func (m *QueryCirculatingSupplyHARDResponse) Reset()         { *m = QueryCircula
 | 
			
		||||
func (m *QueryCirculatingSupplyHARDResponse) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplyHARDResponse) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplyHARDResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{5}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{5}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplyHARDResponse) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -264,7 +264,7 @@ func (m *QueryCirculatingSupplyUSDXRequest) Reset()         { *m = QueryCirculat
 | 
			
		||||
func (m *QueryCirculatingSupplyUSDXRequest) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplyUSDXRequest) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplyUSDXRequest) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{6}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{6}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplyUSDXRequest) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -302,7 +302,7 @@ func (m *QueryCirculatingSupplyUSDXResponse) Reset()         { *m = QueryCircula
 | 
			
		||||
func (m *QueryCirculatingSupplyUSDXResponse) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplyUSDXResponse) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplyUSDXResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{7}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{7}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplyUSDXResponse) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -339,7 +339,7 @@ func (m *QueryCirculatingSupplySWPRequest) Reset()         { *m = QueryCirculati
 | 
			
		||||
func (m *QueryCirculatingSupplySWPRequest) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplySWPRequest) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplySWPRequest) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{8}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{8}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplySWPRequest) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -377,7 +377,7 @@ func (m *QueryCirculatingSupplySWPResponse) Reset()         { *m = QueryCirculat
 | 
			
		||||
func (m *QueryCirculatingSupplySWPResponse) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryCirculatingSupplySWPResponse) ProtoMessage()    {}
 | 
			
		||||
func (*QueryCirculatingSupplySWPResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{9}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{9}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryCirculatingSupplySWPResponse) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -414,7 +414,7 @@ func (m *QueryTotalSupplyHARDRequest) Reset()         { *m = QueryTotalSupplyHAR
 | 
			
		||||
func (m *QueryTotalSupplyHARDRequest) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryTotalSupplyHARDRequest) ProtoMessage()    {}
 | 
			
		||||
func (*QueryTotalSupplyHARDRequest) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{10}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{10}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryTotalSupplyHARDRequest) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -452,7 +452,7 @@ func (m *QueryTotalSupplyHARDResponse) Reset()         { *m = QueryTotalSupplyHA
 | 
			
		||||
func (m *QueryTotalSupplyHARDResponse) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryTotalSupplyHARDResponse) ProtoMessage()    {}
 | 
			
		||||
func (*QueryTotalSupplyHARDResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{11}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{11}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryTotalSupplyHARDResponse) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -489,7 +489,7 @@ func (m *QueryTotalSupplyUSDXRequest) Reset()         { *m = QueryTotalSupplyUSD
 | 
			
		||||
func (m *QueryTotalSupplyUSDXRequest) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryTotalSupplyUSDXRequest) ProtoMessage()    {}
 | 
			
		||||
func (*QueryTotalSupplyUSDXRequest) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{12}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{12}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryTotalSupplyUSDXRequest) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -527,7 +527,7 @@ func (m *QueryTotalSupplyUSDXResponse) Reset()         { *m = QueryTotalSupplyUS
 | 
			
		||||
func (m *QueryTotalSupplyUSDXResponse) String() string { return proto.CompactTextString(m) }
 | 
			
		||||
func (*QueryTotalSupplyUSDXResponse) ProtoMessage()    {}
 | 
			
		||||
func (*QueryTotalSupplyUSDXResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return fileDescriptor_2198ebff70588a65, []int{13}
 | 
			
		||||
	return fileDescriptor_a02a785c2c013eb6, []int{13}
 | 
			
		||||
}
 | 
			
		||||
func (m *QueryTotalSupplyUSDXResponse) XXX_Unmarshal(b []byte) error {
 | 
			
		||||
	return m.Unmarshal(b)
 | 
			
		||||
@ -557,67 +557,67 @@ func (m *QueryTotalSupplyUSDXResponse) XXX_DiscardUnknown() {
 | 
			
		||||
var xxx_messageInfo_QueryTotalSupplyUSDXResponse proto.InternalMessageInfo
 | 
			
		||||
 | 
			
		||||
func init() {
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyRequest)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplyRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyResponse)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplyResponse")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyRequest)(nil), "kava.validatorvesting.v1beta1.QueryTotalSupplyRequest")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyResponse)(nil), "kava.validatorvesting.v1beta1.QueryTotalSupplyResponse")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyHARDRequest)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplyHARDRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyHARDResponse)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplyHARDResponse")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyUSDXRequest)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplyUSDXRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyUSDXResponse)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplyUSDXResponse")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplySWPRequest)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplySWPRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplySWPResponse)(nil), "kava.validatorvesting.v1beta1.QueryCirculatingSupplySWPResponse")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyHARDRequest)(nil), "kava.validatorvesting.v1beta1.QueryTotalSupplyHARDRequest")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyHARDResponse)(nil), "kava.validatorvesting.v1beta1.QueryTotalSupplyHARDResponse")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyUSDXRequest)(nil), "kava.validatorvesting.v1beta1.QueryTotalSupplyUSDXRequest")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyUSDXResponse)(nil), "kava.validatorvesting.v1beta1.QueryTotalSupplyUSDXResponse")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyRequest)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplyRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyResponse)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplyResponse")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyRequest)(nil), "zg.validatorvesting.v1beta1.QueryTotalSupplyRequest")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyResponse)(nil), "zg.validatorvesting.v1beta1.QueryTotalSupplyResponse")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyHARDRequest)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplyHARDRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyHARDResponse)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplyHARDResponse")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyUSDXRequest)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplyUSDXRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplyUSDXResponse)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplyUSDXResponse")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplySWPRequest)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplySWPRequest")
 | 
			
		||||
	proto.RegisterType((*QueryCirculatingSupplySWPResponse)(nil), "zg.validatorvesting.v1beta1.QueryCirculatingSupplySWPResponse")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyHARDRequest)(nil), "zg.validatorvesting.v1beta1.QueryTotalSupplyHARDRequest")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyHARDResponse)(nil), "zg.validatorvesting.v1beta1.QueryTotalSupplyHARDResponse")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyUSDXRequest)(nil), "zg.validatorvesting.v1beta1.QueryTotalSupplyUSDXRequest")
 | 
			
		||||
	proto.RegisterType((*QueryTotalSupplyUSDXResponse)(nil), "zg.validatorvesting.v1beta1.QueryTotalSupplyUSDXResponse")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() {
 | 
			
		||||
	proto.RegisterFile("kava/validatorvesting/v1beta1/query.proto", fileDescriptor_2198ebff70588a65)
 | 
			
		||||
	proto.RegisterFile("zg/validatorvesting/v1beta1/query.proto", fileDescriptor_a02a785c2c013eb6)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var fileDescriptor_2198ebff70588a65 = []byte{
 | 
			
		||||
	// 619 bytes of a gzipped FileDescriptorProto
 | 
			
		||||
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x96, 0xcb, 0x6e, 0xd3, 0x4c,
 | 
			
		||||
	0x14, 0xc7, 0x33, 0x9f, 0xf4, 0x55, 0x62, 0xba, 0x40, 0x8c, 0x8a, 0x68, 0x4d, 0xe3, 0x14, 0x23,
 | 
			
		||||
	0x21, 0x90, 0x88, 0xad, 0x34, 0x55, 0x4b, 0x2f, 0xd0, 0x0b, 0x5d, 0xd0, 0x1d, 0x4d, 0x8a, 0x40,
 | 
			
		||||
	0x6c, 0xa2, 0x49, 0x62, 0xb9, 0x56, 0x1d, 0x8f, 0xeb, 0x19, 0x9b, 0x86, 0x25, 0x4f, 0x80, 0xc4,
 | 
			
		||||
	0xab, 0x74, 0xc3, 0x03, 0x20, 0x65, 0xc1, 0xa2, 0x82, 0x0d, 0x20, 0x51, 0x41, 0xc2, 0x83, 0x20,
 | 
			
		||||
	0x8f, 0x27, 0xaa, 0xeb, 0xb8, 0x29, 0x76, 0x14, 0x58, 0x25, 0xb1, 0xcf, 0xe5, 0xf7, 0xf7, 0x39,
 | 
			
		||||
	0xf3, 0x77, 0xe0, 0xbd, 0x03, 0xec, 0x63, 0xcd, 0xc7, 0x96, 0xd9, 0xc4, 0x8c, 0xb8, 0xbe, 0x4e,
 | 
			
		||||
	0x99, 0x69, 0x1b, 0x9a, 0x5f, 0xaa, 0xeb, 0x0c, 0x97, 0xb4, 0x43, 0x4f, 0x77, 0xdb, 0xaa, 0xe3,
 | 
			
		||||
	0x12, 0x46, 0x50, 0x3e, 0x08, 0x55, 0xe3, 0xa1, 0xaa, 0x08, 0x95, 0x66, 0x1a, 0x84, 0xb6, 0x08,
 | 
			
		||||
	0xad, 0xf1, 0x60, 0x2d, 0xfc, 0x11, 0x66, 0x4a, 0x53, 0x06, 0x31, 0x48, 0x78, 0x3d, 0xf8, 0x26,
 | 
			
		||||
	0xae, 0xce, 0x1a, 0x84, 0x18, 0x96, 0xae, 0x61, 0xc7, 0xd4, 0xb0, 0x6d, 0x13, 0x86, 0x99, 0x49,
 | 
			
		||||
	0x6c, 0x91, 0xa3, 0x14, 0x60, 0x7e, 0x37, 0x68, 0xfe, 0xd8, 0x74, 0x1b, 0x9e, 0x85, 0x83, 0x56,
 | 
			
		||||
	0x55, 0xcf, 0x71, 0xac, 0x76, 0x45, 0x3f, 0xf4, 0x74, 0xca, 0x14, 0x1f, 0xca, 0x17, 0x05, 0x50,
 | 
			
		||||
	0x87, 0xd8, 0x54, 0x47, 0x7b, 0x70, 0x02, 0xb7, 0x88, 0x67, 0xb3, 0x69, 0x30, 0x07, 0xee, 0x5e,
 | 
			
		||||
	0xd9, 0x5a, 0xeb, 0x9c, 0x16, 0x72, 0xdf, 0x4e, 0x0b, 0x77, 0x0c, 0x93, 0xed, 0x7b, 0x75, 0xb5,
 | 
			
		||||
	0x41, 0x5a, 0x82, 0x53, 0x7c, 0x14, 0x69, 0xf3, 0x40, 0x63, 0x6d, 0x47, 0xa7, 0xea, 0x8e, 0xcd,
 | 
			
		||||
	0x3e, 0x1d, 0x17, 0xa1, 0x90, 0xb1, 0x63, 0xb3, 0x8a, 0xa8, 0xa5, 0xcc, 0xc0, 0x1b, 0xbc, 0xef,
 | 
			
		||||
	0x1e, 0x61, 0xd8, 0x3a, 0x8f, 0xe4, 0xc0, 0xe9, 0xc1, 0x5b, 0x63, 0x85, 0xb9, 0x0d, 0x6f, 0x25,
 | 
			
		||||
	0x3f, 0x84, 0x27, 0x9b, 0x95, 0xed, 0x3e, 0xd6, 0x6b, 0xa8, 0x0c, 0x0b, 0xfa, 0x37, 0x80, 0xcf,
 | 
			
		||||
	0xaa, 0xdb, 0x2f, 0x2e, 0x05, 0x0c, 0x83, 0xc6, 0x0a, 0xa8, 0xc0, 0xb9, 0xe4, 0xde, 0xd5, 0xe7,
 | 
			
		||||
	0x4f, 0xfb, 0x7c, 0xed, 0x8b, 0x44, 0xf0, 0x98, 0xb1, 0xe2, 0xe5, 0xe1, 0xcd, 0xf8, 0x4a, 0x45,
 | 
			
		||||
	0x47, 0xcb, 0xe0, 0x6c, 0xf2, 0xed, 0xbf, 0x0d, 0x15, 0x1d, 0x67, 0x02, 0xd4, 0xf8, 0x07, 0x39,
 | 
			
		||||
	0xff, 0x7e, 0x12, 0xfe, 0xcf, 0xdb, 0xa2, 0x8f, 0x00, 0x5e, 0x1b, 0x18, 0x15, 0x5a, 0x53, 0x87,
 | 
			
		||||
	0xfa, 0x97, 0x3a, 0xd4, 0x6d, 0xa4, 0x87, 0x19, 0xb3, 0x43, 0xc9, 0xca, 0xca, 0x9b, 0xcf, 0xbf,
 | 
			
		||||
	0xde, 0xfd, 0xb7, 0x80, 0xe6, 0xb5, 0xf3, 0x7e, 0x5b, 0x8c, 0x1b, 0x6e, 0xe3, 0xac, 0x44, 0x8d,
 | 
			
		||||
	0x86, 0xe0, 0xc7, 0x00, 0x4e, 0x46, 0x1e, 0x25, 0x5a, 0xfc, 0x13, 0x94, 0x41, 0x77, 0x92, 0x96,
 | 
			
		||||
	0x52, 0xe7, 0x09, 0xf8, 0x05, 0x0e, 0xaf, 0xa2, 0xfb, 0x97, 0xc1, 0xb3, 0x20, 0xb9, 0x8f, 0xfd,
 | 
			
		||||
	0x1d, 0xc0, 0xeb, 0x89, 0x8e, 0x83, 0x36, 0x32, 0x3d, 0xcb, 0xc8, 0xda, 0x4b, 0x9b, 0x23, 0x54,
 | 
			
		||||
	0x10, 0xa2, 0xd6, 0xb9, 0xa8, 0x65, 0xb4, 0x94, 0x7e, 0x22, 0xb5, 0x7d, 0xec, 0x36, 0x93, 0xf5,
 | 
			
		||||
	0x05, 0x7b, 0x9e, 0x51, 0x5f, 0xe4, 0x04, 0x65, 0xd4, 0x17, 0x3d, 0x64, 0x23, 0xe9, 0xf3, 0x68,
 | 
			
		||||
	0xf3, 0x08, 0x7d, 0x05, 0x70, 0x2a, 0xc9, 0xf0, 0xd0, 0x7a, 0x26, 0xb8, 0x33, 0x3b, 0x95, 0x36,
 | 
			
		||||
	0xb2, 0x17, 0x10, 0xe2, 0x1e, 0x71, 0x71, 0x0f, 0xd0, 0x62, 0x06, 0x71, 0xf4, 0x95, 0x83, 0x3e,
 | 
			
		||||
	0x00, 0x78, 0x35, 0x66, 0x99, 0x68, 0x25, 0xe5, 0xf1, 0x88, 0xee, 0xe3, 0x6a, 0xa6, 0x5c, 0x21,
 | 
			
		||||
	0x66, 0x99, 0x8b, 0x29, 0xa3, 0x52, 0x9a, 0xe3, 0x15, 0xee, 0x60, 0x4c, 0x07, 0xdf, 0xbe, 0xb4,
 | 
			
		||||
	0x3a, 0xa2, 0x7b, 0xb7, 0x9a, 0x29, 0x77, 0x24, 0x1d, 0xc1, 0xae, 0x6d, 0xed, 0x76, 0x7e, 0xca,
 | 
			
		||||
	0xb9, 0x4e, 0x57, 0x06, 0x27, 0x5d, 0x19, 0xfc, 0xe8, 0xca, 0xe0, 0x6d, 0x4f, 0xce, 0x9d, 0xf4,
 | 
			
		||||
	0xe4, 0xdc, 0x97, 0x9e, 0x9c, 0x7b, 0x59, 0x8e, 0xbc, 0x17, 0x82, 0xd2, 0x45, 0x0b, 0xd7, 0x69,
 | 
			
		||||
	0xd8, 0xe4, 0x28, 0xa1, 0x0d, 0x7f, 0x51, 0xd4, 0x27, 0xf8, 0xdf, 0xc8, 0xf2, 0xef, 0x00, 0x00,
 | 
			
		||||
	0x00, 0xff, 0xff, 0xbd, 0x0f, 0x0a, 0x7d, 0xe1, 0x0a, 0x00, 0x00,
 | 
			
		||||
var fileDescriptor_a02a785c2c013eb6 = []byte{
 | 
			
		||||
	// 620 bytes of a gzipped FileDescriptorProto
 | 
			
		||||
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x96, 0x31, 0x6f, 0xd3, 0x40,
 | 
			
		||||
	0x14, 0xc7, 0x63, 0x24, 0x2a, 0x71, 0x1d, 0x10, 0xa7, 0x22, 0x5a, 0xb7, 0x75, 0x8a, 0x91, 0x00,
 | 
			
		||||
	0x21, 0xe2, 0x4b, 0x42, 0x4a, 0x5b, 0x68, 0x8b, 0x28, 0x1d, 0xe8, 0x06, 0x49, 0x11, 0x88, 0x25,
 | 
			
		||||
	0xba, 0x24, 0x96, 0x63, 0xe1, 0xf8, 0xdc, 0xdc, 0x39, 0x34, 0x19, 0xf9, 0x02, 0x20, 0xf1, 0x3d,
 | 
			
		||||
	0x98, 0xd8, 0xd9, 0x50, 0xc6, 0x8a, 0x0e, 0x20, 0x86, 0x0a, 0x12, 0x3e, 0x08, 0xf2, 0xf9, 0xa2,
 | 
			
		||||
	0x1e, 0x89, 0x9b, 0x62, 0x57, 0x81, 0x29, 0x89, 0xfd, 0xfe, 0x7e, 0xbf, 0xbf, 0xdf, 0xbb, 0xbf,
 | 
			
		||||
	0x02, 0x6e, 0x74, 0x2c, 0xd4, 0xc2, 0x8e, 0x5d, 0xc3, 0x8c, 0x34, 0x5b, 0x26, 0x65, 0xb6, 0x6b,
 | 
			
		||||
	0xa1, 0x56, 0xae, 0x62, 0x32, 0x9c, 0x43, 0x7b, 0xbe, 0xd9, 0x6c, 0x1b, 0x5e, 0x93, 0x30, 0x02,
 | 
			
		||||
	0xe7, 0x3b, 0x96, 0x31, 0x5c, 0x68, 0x88, 0x42, 0x75, 0xae, 0x4a, 0x68, 0x83, 0xd0, 0x32, 0x2f,
 | 
			
		||||
	0x45, 0xe1, 0x8f, 0x50, 0xa7, 0xce, 0x58, 0xc4, 0x22, 0xe1, 0xf5, 0xe0, 0x9b, 0xb8, 0xba, 0x60,
 | 
			
		||||
	0x11, 0x62, 0x39, 0x26, 0xc2, 0x9e, 0x8d, 0xb0, 0xeb, 0x12, 0x86, 0x99, 0x4d, 0x5c, 0xa1, 0xd1,
 | 
			
		||||
	0xd3, 0x60, 0xf1, 0x69, 0xd0, 0xfa, 0x91, 0xdd, 0xac, 0xfa, 0x0e, 0x0e, 0x5a, 0x95, 0x7c, 0xcf,
 | 
			
		||||
	0x73, 0xda, 0x45, 0x73, 0xcf, 0x37, 0x29, 0xd3, 0x5b, 0x40, 0x3b, 0xa9, 0x80, 0x7a, 0xc4, 0xa5,
 | 
			
		||||
	0x26, 0xdc, 0x05, 0x53, 0xb8, 0x41, 0x7c, 0x97, 0xcd, 0x2a, 0x4b, 0xca, 0xcd, 0x0b, 0x5b, 0xeb,
 | 
			
		||||
	0xdd, 0xa3, 0x74, 0xea, 0xfb, 0x51, 0xfa, 0xba, 0x65, 0xb3, 0xba, 0x5f, 0x31, 0xaa, 0xa4, 0x21,
 | 
			
		||||
	0x38, 0xc5, 0x47, 0x86, 0xd6, 0x5e, 0x21, 0xd6, 0xf6, 0x4c, 0x6a, 0xec, 0xb8, 0xec, 0xcb, 0xc7,
 | 
			
		||||
	0x0c, 0x10, 0x36, 0x76, 0x5c, 0x56, 0x14, 0xcf, 0xd2, 0xe7, 0xc0, 0x15, 0xde, 0x77, 0x97, 0x30,
 | 
			
		||||
	0xec, 0xfc, 0x89, 0xe4, 0x81, 0xd9, 0xd1, 0x5b, 0x13, 0x85, 0xb9, 0x06, 0xae, 0x46, 0xbf, 0x84,
 | 
			
		||||
	0xc7, 0x0f, 0x8b, 0xdb, 0x03, 0xac, 0x0e, 0xd0, 0xc7, 0x15, 0xfd, 0x1f, 0xc0, 0x67, 0xa5, 0xed,
 | 
			
		||||
	0x17, 0xa7, 0x02, 0x86, 0x45, 0x13, 0x05, 0xd4, 0xc1, 0x52, 0x74, 0xef, 0xd2, 0xf3, 0x27, 0x03,
 | 
			
		||||
	0xbe, 0xf6, 0x49, 0x26, 0x78, 0xcd, 0x44, 0xf1, 0x16, 0xc1, 0xfc, 0xf0, 0x4a, 0xc9, 0xa3, 0x65,
 | 
			
		||||
	0x60, 0x21, 0xfa, 0xf6, 0xbf, 0x86, 0x92, 0xc7, 0x19, 0x01, 0x35, 0xf9, 0x41, 0xe6, 0xdf, 0x4e,
 | 
			
		||||
	0x83, 0xf3, 0xbc, 0x2d, 0xfc, 0xac, 0x80, 0x4b, 0x23, 0xa3, 0x82, 0xf7, 0x8c, 0x31, 0xe9, 0x65,
 | 
			
		||||
	0x8c, 0xcd, 0x1a, 0xf5, 0x7e, 0x22, 0x6d, 0x68, 0x57, 0x5f, 0x7d, 0x73, 0xf8, 0xeb, 0xfd, 0xb9,
 | 
			
		||||
	0x3c, 0xcc, 0xa2, 0xac, 0x94, 0xb3, 0x99, 0xe1, 0xa0, 0xad, 0x1e, 0x3f, 0xa0, 0x4c, 0x43, 0xe4,
 | 
			
		||||
	0x0f, 0x0a, 0x98, 0x96, 0x5e, 0x22, 0x2c, 0x9c, 0x8e, 0x31, 0x9a, 0x4a, 0xea, 0x72, 0x4c, 0x95,
 | 
			
		||||
	0xc0, 0xce, 0x73, 0xec, 0xdb, 0xf0, 0xd6, 0x78, 0x6c, 0x16, 0x48, 0x07, 0xc0, 0x5f, 0x15, 0x70,
 | 
			
		||||
	0x39, 0x32, 0x65, 0xe0, 0x66, 0x82, 0x37, 0x28, 0x2d, 0xba, 0xfa, 0x20, 0xb1, 0x5e, 0xd8, 0xd9,
 | 
			
		||||
	0xe0, 0x76, 0x56, 0xe0, 0x72, 0xdc, 0x29, 0x94, 0xeb, 0xb8, 0x59, 0x8b, 0x76, 0x16, 0x6c, 0x75,
 | 
			
		||||
	0x22, 0x67, 0xd2, 0x69, 0x49, 0xe4, 0x4c, 0x3e, 0x4e, 0x67, 0x70, 0xe6, 0xd3, 0xda, 0x3e, 0x3c,
 | 
			
		||||
	0x54, 0xc0, 0x4c, 0x54, 0xb0, 0xc1, 0x8d, 0x04, 0x60, 0xc7, 0xa1, 0xa9, 0x6e, 0x26, 0x95, 0x0b,
 | 
			
		||||
	0x5b, 0xeb, 0xdc, 0xd6, 0x5d, 0x58, 0x88, 0x6d, 0x8b, 0xbe, 0xf6, 0xe0, 0x27, 0x05, 0x5c, 0x1c,
 | 
			
		||||
	0x0a, 0x45, 0xb8, 0x1a, 0xeb, 0x20, 0xc8, 0xdb, 0xb7, 0x96, 0x40, 0x29, 0x6c, 0xac, 0x70, 0x1b,
 | 
			
		||||
	0x39, 0x88, 0xfe, 0xfe, 0x18, 0x85, 0x1b, 0x37, 0xe4, 0x80, 0xef, 0x5a, 0x3c, 0x07, 0xf2, 0x96,
 | 
			
		||||
	0xad, 0x25, 0x50, 0x9e, 0xc1, 0x41, 0xb0, 0x59, 0x5b, 0xc5, 0xee, 0x4f, 0x2d, 0xd5, 0xed, 0x69,
 | 
			
		||||
	0xca, 0x41, 0x4f, 0x53, 0x7e, 0xf4, 0x34, 0xe5, 0x5d, 0x5f, 0x4b, 0x1d, 0xf4, 0xb5, 0xd4, 0xb7,
 | 
			
		||||
	0xbe, 0x96, 0x7a, 0x59, 0x90, 0xd2, 0x3e, 0x6b, 0x39, 0xb8, 0x42, 0x51, 0xd6, 0xca, 0x54, 0xeb,
 | 
			
		||||
	0xd8, 0x76, 0xd1, 0x7e, 0x44, 0x1f, 0x9e, 0xff, 0x95, 0x29, 0xfe, 0xef, 0xf0, 0xce, 0xef, 0x00,
 | 
			
		||||
	0x00, 0x00, 0xff, 0xff, 0x63, 0x31, 0x5f, 0xeb, 0xb4, 0x0a, 0x00, 0x00,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Reference imports to suppress errors if they are not otherwise used.
 | 
			
		||||
@ -658,7 +658,7 @@ func NewQueryClient(cc grpc1.ClientConn) QueryClient {
 | 
			
		||||
 | 
			
		||||
func (c *queryClient) CirculatingSupply(ctx context.Context, in *QueryCirculatingSupplyRequest, opts ...grpc.CallOption) (*QueryCirculatingSupplyResponse, error) {
 | 
			
		||||
	out := new(QueryCirculatingSupplyResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/kava.validatorvesting.v1beta1.Query/CirculatingSupply", in, out, opts...)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/zg.validatorvesting.v1beta1.Query/CirculatingSupply", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@ -667,7 +667,7 @@ func (c *queryClient) CirculatingSupply(ctx context.Context, in *QueryCirculatin
 | 
			
		||||
 | 
			
		||||
func (c *queryClient) TotalSupply(ctx context.Context, in *QueryTotalSupplyRequest, opts ...grpc.CallOption) (*QueryTotalSupplyResponse, error) {
 | 
			
		||||
	out := new(QueryTotalSupplyResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/kava.validatorvesting.v1beta1.Query/TotalSupply", in, out, opts...)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/zg.validatorvesting.v1beta1.Query/TotalSupply", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@ -676,7 +676,7 @@ func (c *queryClient) TotalSupply(ctx context.Context, in *QueryTotalSupplyReque
 | 
			
		||||
 | 
			
		||||
func (c *queryClient) CirculatingSupplyHARD(ctx context.Context, in *QueryCirculatingSupplyHARDRequest, opts ...grpc.CallOption) (*QueryCirculatingSupplyHARDResponse, error) {
 | 
			
		||||
	out := new(QueryCirculatingSupplyHARDResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/kava.validatorvesting.v1beta1.Query/CirculatingSupplyHARD", in, out, opts...)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/zg.validatorvesting.v1beta1.Query/CirculatingSupplyHARD", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@ -685,7 +685,7 @@ func (c *queryClient) CirculatingSupplyHARD(ctx context.Context, in *QueryCircul
 | 
			
		||||
 | 
			
		||||
func (c *queryClient) CirculatingSupplyUSDX(ctx context.Context, in *QueryCirculatingSupplyUSDXRequest, opts ...grpc.CallOption) (*QueryCirculatingSupplyUSDXResponse, error) {
 | 
			
		||||
	out := new(QueryCirculatingSupplyUSDXResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/kava.validatorvesting.v1beta1.Query/CirculatingSupplyUSDX", in, out, opts...)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/zg.validatorvesting.v1beta1.Query/CirculatingSupplyUSDX", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@ -694,7 +694,7 @@ func (c *queryClient) CirculatingSupplyUSDX(ctx context.Context, in *QueryCircul
 | 
			
		||||
 | 
			
		||||
func (c *queryClient) CirculatingSupplySWP(ctx context.Context, in *QueryCirculatingSupplySWPRequest, opts ...grpc.CallOption) (*QueryCirculatingSupplySWPResponse, error) {
 | 
			
		||||
	out := new(QueryCirculatingSupplySWPResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/kava.validatorvesting.v1beta1.Query/CirculatingSupplySWP", in, out, opts...)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/zg.validatorvesting.v1beta1.Query/CirculatingSupplySWP", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@ -703,7 +703,7 @@ func (c *queryClient) CirculatingSupplySWP(ctx context.Context, in *QueryCircula
 | 
			
		||||
 | 
			
		||||
func (c *queryClient) TotalSupplyHARD(ctx context.Context, in *QueryTotalSupplyHARDRequest, opts ...grpc.CallOption) (*QueryTotalSupplyHARDResponse, error) {
 | 
			
		||||
	out := new(QueryTotalSupplyHARDResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/kava.validatorvesting.v1beta1.Query/TotalSupplyHARD", in, out, opts...)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/zg.validatorvesting.v1beta1.Query/TotalSupplyHARD", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@ -712,7 +712,7 @@ func (c *queryClient) TotalSupplyHARD(ctx context.Context, in *QueryTotalSupplyH
 | 
			
		||||
 | 
			
		||||
func (c *queryClient) TotalSupplyUSDX(ctx context.Context, in *QueryTotalSupplyUSDXRequest, opts ...grpc.CallOption) (*QueryTotalSupplyUSDXResponse, error) {
 | 
			
		||||
	out := new(QueryTotalSupplyUSDXResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/kava.validatorvesting.v1beta1.Query/TotalSupplyUSDX", in, out, opts...)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/zg.validatorvesting.v1beta1.Query/TotalSupplyUSDX", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
@ -777,7 +777,7 @@ func _Query_CirculatingSupply_Handler(srv interface{}, ctx context.Context, dec
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/kava.validatorvesting.v1beta1.Query/CirculatingSupply",
 | 
			
		||||
		FullMethod: "/zg.validatorvesting.v1beta1.Query/CirculatingSupply",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(QueryServer).CirculatingSupply(ctx, req.(*QueryCirculatingSupplyRequest))
 | 
			
		||||
@ -795,7 +795,7 @@ func _Query_TotalSupply_Handler(srv interface{}, ctx context.Context, dec func(i
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/kava.validatorvesting.v1beta1.Query/TotalSupply",
 | 
			
		||||
		FullMethod: "/zg.validatorvesting.v1beta1.Query/TotalSupply",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(QueryServer).TotalSupply(ctx, req.(*QueryTotalSupplyRequest))
 | 
			
		||||
@ -813,7 +813,7 @@ func _Query_CirculatingSupplyHARD_Handler(srv interface{}, ctx context.Context,
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/kava.validatorvesting.v1beta1.Query/CirculatingSupplyHARD",
 | 
			
		||||
		FullMethod: "/zg.validatorvesting.v1beta1.Query/CirculatingSupplyHARD",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(QueryServer).CirculatingSupplyHARD(ctx, req.(*QueryCirculatingSupplyHARDRequest))
 | 
			
		||||
@ -831,7 +831,7 @@ func _Query_CirculatingSupplyUSDX_Handler(srv interface{}, ctx context.Context,
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/kava.validatorvesting.v1beta1.Query/CirculatingSupplyUSDX",
 | 
			
		||||
		FullMethod: "/zg.validatorvesting.v1beta1.Query/CirculatingSupplyUSDX",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(QueryServer).CirculatingSupplyUSDX(ctx, req.(*QueryCirculatingSupplyUSDXRequest))
 | 
			
		||||
@ -849,7 +849,7 @@ func _Query_CirculatingSupplySWP_Handler(srv interface{}, ctx context.Context, d
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/kava.validatorvesting.v1beta1.Query/CirculatingSupplySWP",
 | 
			
		||||
		FullMethod: "/zg.validatorvesting.v1beta1.Query/CirculatingSupplySWP",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(QueryServer).CirculatingSupplySWP(ctx, req.(*QueryCirculatingSupplySWPRequest))
 | 
			
		||||
@ -867,7 +867,7 @@ func _Query_TotalSupplyHARD_Handler(srv interface{}, ctx context.Context, dec fu
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/kava.validatorvesting.v1beta1.Query/TotalSupplyHARD",
 | 
			
		||||
		FullMethod: "/zg.validatorvesting.v1beta1.Query/TotalSupplyHARD",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(QueryServer).TotalSupplyHARD(ctx, req.(*QueryTotalSupplyHARDRequest))
 | 
			
		||||
@ -885,7 +885,7 @@ func _Query_TotalSupplyUSDX_Handler(srv interface{}, ctx context.Context, dec fu
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/kava.validatorvesting.v1beta1.Query/TotalSupplyUSDX",
 | 
			
		||||
		FullMethod: "/zg.validatorvesting.v1beta1.Query/TotalSupplyUSDX",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(QueryServer).TotalSupplyUSDX(ctx, req.(*QueryTotalSupplyUSDXRequest))
 | 
			
		||||
@ -894,7 +894,7 @@ func _Query_TotalSupplyUSDX_Handler(srv interface{}, ctx context.Context, dec fu
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var _Query_serviceDesc = grpc.ServiceDesc{
 | 
			
		||||
	ServiceName: "kava.validatorvesting.v1beta1.Query",
 | 
			
		||||
	ServiceName: "zg.validatorvesting.v1beta1.Query",
 | 
			
		||||
	HandlerType: (*QueryServer)(nil),
 | 
			
		||||
	Methods: []grpc.MethodDesc{
 | 
			
		||||
		{
 | 
			
		||||
@ -927,7 +927,7 @@ var _Query_serviceDesc = grpc.ServiceDesc{
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	Streams:  []grpc.StreamDesc{},
 | 
			
		||||
	Metadata: "kava/validatorvesting/v1beta1/query.proto",
 | 
			
		||||
	Metadata: "zg/validatorvesting/v1beta1/query.proto",
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *QueryCirculatingSupplyRequest) Marshal() (dAtA []byte, err error) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT.
 | 
			
		||||
// source: kava/validatorvesting/v1beta1/query.proto
 | 
			
		||||
// source: zg/validatorvesting/v1beta1/query.proto
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
Package types is a reverse proxy.
 | 
			
		||||
@ -511,19 +511,19 @@ func RegisterQueryHandlerClient(ctx context.Context, mux *runtime.ServeMux, clie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	pattern_Query_CirculatingSupply_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"kava", "validator-vesting", "v1beta1", "circulating_supply"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_CirculatingSupply_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "validator-vesting", "v1beta1", "circulating_supply"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_TotalSupply_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"kava", "validator-vesting", "v1beta1", "total_supply"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_TotalSupply_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "validator-vesting", "v1beta1", "total_supply"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_CirculatingSupplyHARD_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"kava", "validator-vesting", "v1beta1", "circulating_supply_hard"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_CirculatingSupplyHARD_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "validator-vesting", "v1beta1", "circulating_supply_hard"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_CirculatingSupplyUSDX_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"kava", "validator-vesting", "v1beta1", "circulating_supply_usdx"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_CirculatingSupplyUSDX_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "validator-vesting", "v1beta1", "circulating_supply_usdx"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_CirculatingSupplySWP_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"kava", "validator-vesting", "v1beta1", "circulating_supply_swp"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_CirculatingSupplySWP_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "validator-vesting", "v1beta1", "circulating_supply_swp"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_TotalSupplyHARD_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"kava", "validator-vesting", "v1beta1", "total_supply_hard"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_TotalSupplyHARD_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "validator-vesting", "v1beta1", "total_supply_hard"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
 | 
			
		||||
	pattern_Query_TotalSupplyUSDX_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"kava", "validator-vesting", "v1beta1", "total_supply_usdx"}, "", runtime.AssumeColonVerbOpt(false)))
 | 
			
		||||
	pattern_Query_TotalSupplyUSDX_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"0g", "validator-vesting", "v1beta1", "total_supply_usdx"}, "", runtime.AssumeColonVerbOpt(true)))
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user