func ActiveProposalQueueKey(proposalID uint64, endTime time.Time) []byte {
	return append(ActiveProposalByTimeKey(endTime), GetProposalIDBytes(proposalID)...)
}
ActiveProposalQueueKey returns the key for a proposalID in the activeProposalQueue
package types
import (
	"encoding/binary"
	"fmt"
	"time"
	"github.com/KuChainNetwork/kuchain/x/supply/types"
	sdk "github.com/cosmos/cosmos-sdk/types"
)
const (
	ModuleName = "kugov"
	StoreKey = ModuleName
	RouterKey = ModuleName
	QuerierRoute = ModuleName
	DefaultParamspace = ModuleName
	AccountIDlen = sdk.AddrLen + 1
)
var (
	ModuleAccountID = types.NewAccountIDFromName(types.MustName(ModuleName))
)
var (
	ProposalsKeyPrefix          = []byte{0x00}
	ActiveProposalQueuePrefix   = []byte{0x01}
	InactiveProposalQueuePrefix = []byte{0x02}
	ProposalIDKey               = []byte{0x03}
	DepositsKeyPrefix = []byte{0x10}
	VotesKeyPrefix = []byte{0x20}
	ValidatorKeyPrefix = []byte{0x30}
)
var lenTime = len(sdk.FormatTimeBytes(time.Now()))
func GetProposalIDBytes(proposalID uint64) (proposalIDBz []byte) {
	proposalIDBz = make([]byte, 8)
	binary.BigEndian.PutUint64(proposalIDBz, proposalID)
	return
}
func GetProposalIDFromBytes(bz []byte) (proposalID uint64) {
	return binary.BigEndian.Uint64(bz)
}
func ProposalKey(proposalID uint64) []byte {
	return append(ProposalsKeyPrefix, GetProposalIDBytes(proposalID)...)
}
func ActiveProposalByTimeKey(endTime time.Time) []byte {
	return append(ActiveProposalQueuePrefix, sdk.FormatTimeBytes(endTime)...)
}