// Code generated by protoc-gen-gogo. DO NOT EDIT.
// source: ununifi/nftbackedloan/query.proto

package types

import (
	context "context"
	fmt "fmt"
	_ "github.com/cosmos/cosmos-proto"
	types "github.com/cosmos/cosmos-sdk/types"
	_ "github.com/cosmos/cosmos-sdk/types/query"
	_ "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"
	status "google.golang.org/grpc/status"
	_ "google.golang.org/protobuf/types/known/timestamppb"
	io "io"
	math "math"
	math_bits "math/bits"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package

type QueryParamsRequest struct {
}

func (m *QueryParamsRequest) Reset()         { *m = QueryParamsRequest{} }
func (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) }
func (*QueryParamsRequest) ProtoMessage()    {}
func (*QueryParamsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{0}
}
func (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryParamsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryParamsRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryParamsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryParamsRequest.Merge(m, src)
}
func (m *QueryParamsRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryParamsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryParamsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryParamsRequest proto.InternalMessageInfo

type QueryParamsResponse struct {
	Params Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params"`
}

func (m *QueryParamsResponse) Reset()         { *m = QueryParamsResponse{} }
func (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) }
func (*QueryParamsResponse) ProtoMessage()    {}
func (*QueryParamsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{1}
}
func (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryParamsResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryParamsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryParamsResponse.Merge(m, src)
}
func (m *QueryParamsResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryParamsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryParamsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryParamsResponse proto.InternalMessageInfo

func (m *QueryParamsResponse) GetParams() Params {
	if m != nil {
		return m.Params
	}
	return Params{}
}

type QueryListedNftRequest struct {
	ClassId string `protobuf:"bytes,1,opt,name=class_id,json=classId,proto3" json:"class_id,omitempty"`
	TokenId string `protobuf:"bytes,2,opt,name=token_id,json=tokenId,proto3" json:"token_id,omitempty"`
}

func (m *QueryListedNftRequest) Reset()         { *m = QueryListedNftRequest{} }
func (m *QueryListedNftRequest) String() string { return proto.CompactTextString(m) }
func (*QueryListedNftRequest) ProtoMessage()    {}
func (*QueryListedNftRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{2}
}
func (m *QueryListedNftRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedNftRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedNftRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedNftRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedNftRequest.Merge(m, src)
}
func (m *QueryListedNftRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedNftRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedNftRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedNftRequest proto.InternalMessageInfo

func (m *QueryListedNftRequest) GetClassId() string {
	if m != nil {
		return m.ClassId
	}
	return ""
}

func (m *QueryListedNftRequest) GetTokenId() string {
	if m != nil {
		return m.TokenId
	}
	return ""
}

type QueryListedNftResponse struct {
	Listing Listing `protobuf:"bytes,1,opt,name=listing,proto3" json:"listing"`
}

func (m *QueryListedNftResponse) Reset()         { *m = QueryListedNftResponse{} }
func (m *QueryListedNftResponse) String() string { return proto.CompactTextString(m) }
func (*QueryListedNftResponse) ProtoMessage()    {}
func (*QueryListedNftResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{3}
}
func (m *QueryListedNftResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedNftResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedNftResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedNftResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedNftResponse.Merge(m, src)
}
func (m *QueryListedNftResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedNftResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedNftResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedNftResponse proto.InternalMessageInfo

func (m *QueryListedNftResponse) GetListing() Listing {
	if m != nil {
		return m.Listing
	}
	return Listing{}
}

type QueryListedNftsRequest struct {
	Owner string `protobuf:"bytes,1,opt,name=owner,proto3" json:"owner,omitempty" yaml:"owner"`
}

func (m *QueryListedNftsRequest) Reset()         { *m = QueryListedNftsRequest{} }
func (m *QueryListedNftsRequest) String() string { return proto.CompactTextString(m) }
func (*QueryListedNftsRequest) ProtoMessage()    {}
func (*QueryListedNftsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{4}
}
func (m *QueryListedNftsRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedNftsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedNftsRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedNftsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedNftsRequest.Merge(m, src)
}
func (m *QueryListedNftsRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedNftsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedNftsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedNftsRequest proto.InternalMessageInfo

func (m *QueryListedNftsRequest) GetOwner() string {
	if m != nil {
		return m.Owner
	}
	return ""
}

type QueryListedClassesRequest struct {
	NftLimit int32 `protobuf:"varint,1,opt,name=nft_limit,json=nftLimit,proto3" json:"nft_limit,omitempty"`
}

func (m *QueryListedClassesRequest) Reset()         { *m = QueryListedClassesRequest{} }
func (m *QueryListedClassesRequest) String() string { return proto.CompactTextString(m) }
func (*QueryListedClassesRequest) ProtoMessage()    {}
func (*QueryListedClassesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{5}
}
func (m *QueryListedClassesRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedClassesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedClassesRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedClassesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedClassesRequest.Merge(m, src)
}
func (m *QueryListedClassesRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedClassesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedClassesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedClassesRequest proto.InternalMessageInfo

func (m *QueryListedClassesRequest) GetNftLimit() int32 {
	if m != nil {
		return m.NftLimit
	}
	return 0
}

type QueryListedClassRequest struct {
	ClassId  string `protobuf:"bytes,1,opt,name=class_id,json=classId,proto3" json:"class_id,omitempty"`
	NftLimit int32  `protobuf:"varint,2,opt,name=nft_limit,json=nftLimit,proto3" json:"nft_limit,omitempty"`
}

func (m *QueryListedClassRequest) Reset()         { *m = QueryListedClassRequest{} }
func (m *QueryListedClassRequest) String() string { return proto.CompactTextString(m) }
func (*QueryListedClassRequest) ProtoMessage()    {}
func (*QueryListedClassRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{6}
}
func (m *QueryListedClassRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedClassRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedClassRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedClassRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedClassRequest.Merge(m, src)
}
func (m *QueryListedClassRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedClassRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedClassRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedClassRequest proto.InternalMessageInfo

func (m *QueryListedClassRequest) GetClassId() string {
	if m != nil {
		return m.ClassId
	}
	return ""
}

func (m *QueryListedClassRequest) GetNftLimit() int32 {
	if m != nil {
		return m.NftLimit
	}
	return 0
}

type ListedNftDetail struct {
	Listing Listing `protobuf:"bytes,1,opt,name=listing,proto3" json:"listing"`
	NftInfo NftInfo `protobuf:"bytes,2,opt,name=nft_info,json=nftInfo,proto3" json:"nft_info"`
}

func (m *ListedNftDetail) Reset()         { *m = ListedNftDetail{} }
func (m *ListedNftDetail) String() string { return proto.CompactTextString(m) }
func (*ListedNftDetail) ProtoMessage()    {}
func (*ListedNftDetail) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{7}
}
func (m *ListedNftDetail) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *ListedNftDetail) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_ListedNftDetail.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *ListedNftDetail) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListedNftDetail.Merge(m, src)
}
func (m *ListedNftDetail) XXX_Size() int {
	return m.Size()
}
func (m *ListedNftDetail) XXX_DiscardUnknown() {
	xxx_messageInfo_ListedNftDetail.DiscardUnknown(m)
}

var xxx_messageInfo_ListedNftDetail proto.InternalMessageInfo

func (m *ListedNftDetail) GetListing() Listing {
	if m != nil {
		return m.Listing
	}
	return Listing{}
}

func (m *ListedNftDetail) GetNftInfo() NftInfo {
	if m != nil {
		return m.NftInfo
	}
	return NftInfo{}
}

type QueryListedNftsResponse struct {
	Listings []ListedNftDetail `protobuf:"bytes,1,rep,name=listings,proto3" json:"listings"`
}

func (m *QueryListedNftsResponse) Reset()         { *m = QueryListedNftsResponse{} }
func (m *QueryListedNftsResponse) String() string { return proto.CompactTextString(m) }
func (*QueryListedNftsResponse) ProtoMessage()    {}
func (*QueryListedNftsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{8}
}
func (m *QueryListedNftsResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedNftsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedNftsResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedNftsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedNftsResponse.Merge(m, src)
}
func (m *QueryListedNftsResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedNftsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedNftsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedNftsResponse proto.InternalMessageInfo

func (m *QueryListedNftsResponse) GetListings() []ListedNftDetail {
	if m != nil {
		return m.Listings
	}
	return nil
}

type QueryListedClassesResponse struct {
	Classes []*QueryListedClassResponse `protobuf:"bytes,1,rep,name=classes,proto3" json:"classes,omitempty"`
}

func (m *QueryListedClassesResponse) Reset()         { *m = QueryListedClassesResponse{} }
func (m *QueryListedClassesResponse) String() string { return proto.CompactTextString(m) }
func (*QueryListedClassesResponse) ProtoMessage()    {}
func (*QueryListedClassesResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{9}
}
func (m *QueryListedClassesResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedClassesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedClassesResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedClassesResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedClassesResponse.Merge(m, src)
}
func (m *QueryListedClassesResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedClassesResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedClassesResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedClassesResponse proto.InternalMessageInfo

func (m *QueryListedClassesResponse) GetClasses() []*QueryListedClassResponse {
	if m != nil {
		return m.Classes
	}
	return nil
}

type QueryListedClassResponse struct {
	ClassId     string     `protobuf:"bytes,1,opt,name=class_id,json=classId,proto3" json:"class_id,omitempty"`
	Name        string     `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description string     `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	Symbol      string     `protobuf:"bytes,4,opt,name=symbol,proto3" json:"symbol,omitempty"`
	Uri         string     `protobuf:"bytes,5,opt,name=uri,proto3" json:"uri,omitempty"`
	Urihash     string     `protobuf:"bytes,6,opt,name=urihash,proto3" json:"urihash,omitempty"`
	Nfts        []*NftInfo `protobuf:"bytes,7,rep,name=nfts,proto3" json:"nfts,omitempty"`
	NftCount    uint64     `protobuf:"varint,8,opt,name=nft_count,json=nftCount,proto3" json:"nft_count,omitempty"`
}

func (m *QueryListedClassResponse) Reset()         { *m = QueryListedClassResponse{} }
func (m *QueryListedClassResponse) String() string { return proto.CompactTextString(m) }
func (*QueryListedClassResponse) ProtoMessage()    {}
func (*QueryListedClassResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{10}
}
func (m *QueryListedClassResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryListedClassResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryListedClassResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryListedClassResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryListedClassResponse.Merge(m, src)
}
func (m *QueryListedClassResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryListedClassResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryListedClassResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryListedClassResponse proto.InternalMessageInfo

func (m *QueryListedClassResponse) GetClassId() string {
	if m != nil {
		return m.ClassId
	}
	return ""
}

func (m *QueryListedClassResponse) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *QueryListedClassResponse) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *QueryListedClassResponse) GetSymbol() string {
	if m != nil {
		return m.Symbol
	}
	return ""
}

func (m *QueryListedClassResponse) GetUri() string {
	if m != nil {
		return m.Uri
	}
	return ""
}

func (m *QueryListedClassResponse) GetUrihash() string {
	if m != nil {
		return m.Urihash
	}
	return ""
}

func (m *QueryListedClassResponse) GetNfts() []*NftInfo {
	if m != nil {
		return m.Nfts
	}
	return nil
}

func (m *QueryListedClassResponse) GetNftCount() uint64 {
	if m != nil {
		return m.NftCount
	}
	return 0
}

type QueryLoanRequest struct {
	ClassId string `protobuf:"bytes,1,opt,name=class_id,json=classId,proto3" json:"class_id,omitempty"`
	TokenId string `protobuf:"bytes,2,opt,name=token_id,json=tokenId,proto3" json:"token_id,omitempty"`
}

func (m *QueryLoanRequest) Reset()         { *m = QueryLoanRequest{} }
func (m *QueryLoanRequest) String() string { return proto.CompactTextString(m) }
func (*QueryLoanRequest) ProtoMessage()    {}
func (*QueryLoanRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{11}
}
func (m *QueryLoanRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryLoanRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryLoanRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryLoanRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryLoanRequest.Merge(m, src)
}
func (m *QueryLoanRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryLoanRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryLoanRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryLoanRequest proto.InternalMessageInfo

func (m *QueryLoanRequest) GetClassId() string {
	if m != nil {
		return m.ClassId
	}
	return ""
}

func (m *QueryLoanRequest) GetTokenId() string {
	if m != nil {
		return m.TokenId
	}
	return ""
}

type QueryLoanResponse struct {
	NftId           NftId      `protobuf:"bytes,1,opt,name=nft_id,json=nftId,proto3" json:"nft_id"`
	BorrowingAmount types.Coin `protobuf:"bytes,2,opt,name=borrowing_amount,json=borrowingAmount,proto3" json:"borrowing_amount"`
	BorrowingLimit  types.Coin `protobuf:"bytes,3,opt,name=borrowing_limit,json=borrowingLimit,proto3" json:"borrowing_limit"`
	TotalDeposit    types.Coin `protobuf:"bytes,4,opt,name=total_deposit,json=totalDeposit,proto3" json:"total_deposit"`
}

func (m *QueryLoanResponse) Reset()         { *m = QueryLoanResponse{} }
func (m *QueryLoanResponse) String() string { return proto.CompactTextString(m) }
func (*QueryLoanResponse) ProtoMessage()    {}
func (*QueryLoanResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{12}
}
func (m *QueryLoanResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryLoanResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryLoanResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryLoanResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryLoanResponse.Merge(m, src)
}
func (m *QueryLoanResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryLoanResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryLoanResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryLoanResponse proto.InternalMessageInfo

func (m *QueryLoanResponse) GetNftId() NftId {
	if m != nil {
		return m.NftId
	}
	return NftId{}
}

func (m *QueryLoanResponse) GetBorrowingAmount() types.Coin {
	if m != nil {
		return m.BorrowingAmount
	}
	return types.Coin{}
}

func (m *QueryLoanResponse) GetBorrowingLimit() types.Coin {
	if m != nil {
		return m.BorrowingLimit
	}
	return types.Coin{}
}

func (m *QueryLoanResponse) GetTotalDeposit() types.Coin {
	if m != nil {
		return m.TotalDeposit
	}
	return types.Coin{}
}

type QueryNftBidsRequest struct {
	ClassId string `protobuf:"bytes,1,opt,name=class_id,json=classId,proto3" json:"class_id,omitempty"`
	TokenId string `protobuf:"bytes,2,opt,name=token_id,json=tokenId,proto3" json:"token_id,omitempty"`
}

func (m *QueryNftBidsRequest) Reset()         { *m = QueryNftBidsRequest{} }
func (m *QueryNftBidsRequest) String() string { return proto.CompactTextString(m) }
func (*QueryNftBidsRequest) ProtoMessage()    {}
func (*QueryNftBidsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{13}
}
func (m *QueryNftBidsRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryNftBidsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryNftBidsRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryNftBidsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryNftBidsRequest.Merge(m, src)
}
func (m *QueryNftBidsRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryNftBidsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryNftBidsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryNftBidsRequest proto.InternalMessageInfo

func (m *QueryNftBidsRequest) GetClassId() string {
	if m != nil {
		return m.ClassId
	}
	return ""
}

func (m *QueryNftBidsRequest) GetTokenId() string {
	if m != nil {
		return m.TokenId
	}
	return ""
}

type QueryNftBidsResponse struct {
	Bids []Bid `protobuf:"bytes,1,rep,name=bids,proto3" json:"bids"`
}

func (m *QueryNftBidsResponse) Reset()         { *m = QueryNftBidsResponse{} }
func (m *QueryNftBidsResponse) String() string { return proto.CompactTextString(m) }
func (*QueryNftBidsResponse) ProtoMessage()    {}
func (*QueryNftBidsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{14}
}
func (m *QueryNftBidsResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryNftBidsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryNftBidsResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryNftBidsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryNftBidsResponse.Merge(m, src)
}
func (m *QueryNftBidsResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryNftBidsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryNftBidsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryNftBidsResponse proto.InternalMessageInfo

func (m *QueryNftBidsResponse) GetBids() []Bid {
	if m != nil {
		return m.Bids
	}
	return nil
}

type QueryBidderBidsRequest struct {
	Bidder string `protobuf:"bytes,1,opt,name=bidder,proto3" json:"bidder,omitempty" yaml:"bidder"`
}

func (m *QueryBidderBidsRequest) Reset()         { *m = QueryBidderBidsRequest{} }
func (m *QueryBidderBidsRequest) String() string { return proto.CompactTextString(m) }
func (*QueryBidderBidsRequest) ProtoMessage()    {}
func (*QueryBidderBidsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{15}
}
func (m *QueryBidderBidsRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryBidderBidsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryBidderBidsRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryBidderBidsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryBidderBidsRequest.Merge(m, src)
}
func (m *QueryBidderBidsRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryBidderBidsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryBidderBidsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryBidderBidsRequest proto.InternalMessageInfo

func (m *QueryBidderBidsRequest) GetBidder() string {
	if m != nil {
		return m.Bidder
	}
	return ""
}

type QueryBidderBidsResponse struct {
	Bids []Bid `protobuf:"bytes,1,rep,name=bids,proto3" json:"bids"`
}

func (m *QueryBidderBidsResponse) Reset()         { *m = QueryBidderBidsResponse{} }
func (m *QueryBidderBidsResponse) String() string { return proto.CompactTextString(m) }
func (*QueryBidderBidsResponse) ProtoMessage()    {}
func (*QueryBidderBidsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{16}
}
func (m *QueryBidderBidsResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryBidderBidsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryBidderBidsResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryBidderBidsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryBidderBidsResponse.Merge(m, src)
}
func (m *QueryBidderBidsResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryBidderBidsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryBidderBidsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryBidderBidsResponse proto.InternalMessageInfo

func (m *QueryBidderBidsResponse) GetBids() []Bid {
	if m != nil {
		return m.Bids
	}
	return nil
}

type QueryRewardsRequest struct {
	Address uint64 `protobuf:"varint,1,opt,name=address,proto3" json:"address,omitempty"`
}

func (m *QueryRewardsRequest) Reset()         { *m = QueryRewardsRequest{} }
func (m *QueryRewardsRequest) String() string { return proto.CompactTextString(m) }
func (*QueryRewardsRequest) ProtoMessage()    {}
func (*QueryRewardsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{17}
}
func (m *QueryRewardsRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryRewardsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryRewardsRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryRewardsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryRewardsRequest.Merge(m, src)
}
func (m *QueryRewardsRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryRewardsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryRewardsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryRewardsRequest proto.InternalMessageInfo

func (m *QueryRewardsRequest) GetAddress() uint64 {
	if m != nil {
		return m.Address
	}
	return 0
}

type QueryRewardsResponse struct {
	Rewards []types.Coin `protobuf:"bytes,1,rep,name=rewards,proto3" json:"rewards"`
}

func (m *QueryRewardsResponse) Reset()         { *m = QueryRewardsResponse{} }
func (m *QueryRewardsResponse) String() string { return proto.CompactTextString(m) }
func (*QueryRewardsResponse) ProtoMessage()    {}
func (*QueryRewardsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{18}
}
func (m *QueryRewardsResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryRewardsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryRewardsResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryRewardsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryRewardsResponse.Merge(m, src)
}
func (m *QueryRewardsResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryRewardsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryRewardsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryRewardsResponse proto.InternalMessageInfo

func (m *QueryRewardsResponse) GetRewards() []types.Coin {
	if m != nil {
		return m.Rewards
	}
	return nil
}

type QueryLiquidationRequest struct {
	ClassId string `protobuf:"bytes,1,opt,name=class_id,json=classId,proto3" json:"class_id,omitempty"`
	TokenId string `protobuf:"bytes,2,opt,name=token_id,json=tokenId,proto3" json:"token_id,omitempty"`
}

func (m *QueryLiquidationRequest) Reset()         { *m = QueryLiquidationRequest{} }
func (m *QueryLiquidationRequest) String() string { return proto.CompactTextString(m) }
func (*QueryLiquidationRequest) ProtoMessage()    {}
func (*QueryLiquidationRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{19}
}
func (m *QueryLiquidationRequest) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryLiquidationRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryLiquidationRequest.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryLiquidationRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryLiquidationRequest.Merge(m, src)
}
func (m *QueryLiquidationRequest) XXX_Size() int {
	return m.Size()
}
func (m *QueryLiquidationRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryLiquidationRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryLiquidationRequest proto.InternalMessageInfo

func (m *QueryLiquidationRequest) GetClassId() string {
	if m != nil {
		return m.ClassId
	}
	return ""
}

func (m *QueryLiquidationRequest) GetTokenId() string {
	if m != nil {
		return m.TokenId
	}
	return ""
}

type QueryLiquidationResponse struct {
	Liquidations *Liquidations `protobuf:"bytes,1,opt,name=liquidations,proto3" json:"liquidations,omitempty"`
}

func (m *QueryLiquidationResponse) Reset()         { *m = QueryLiquidationResponse{} }
func (m *QueryLiquidationResponse) String() string { return proto.CompactTextString(m) }
func (*QueryLiquidationResponse) ProtoMessage()    {}
func (*QueryLiquidationResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7db9d9524c1d8ab8, []int{20}
}
func (m *QueryLiquidationResponse) XXX_Unmarshal(b []byte) error {
	return m.Unmarshal(b)
}
func (m *QueryLiquidationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	if deterministic {
		return xxx_messageInfo_QueryLiquidationResponse.Marshal(b, m, deterministic)
	} else {
		b = b[:cap(b)]
		n, err := m.MarshalToSizedBuffer(b)
		if err != nil {
			return nil, err
		}
		return b[:n], nil
	}
}
func (m *QueryLiquidationResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryLiquidationResponse.Merge(m, src)
}
func (m *QueryLiquidationResponse) XXX_Size() int {
	return m.Size()
}
func (m *QueryLiquidationResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryLiquidationResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryLiquidationResponse proto.InternalMessageInfo

func (m *QueryLiquidationResponse) GetLiquidations() *Liquidations {
	if m != nil {
		return m.Liquidations
	}
	return nil
}

func init() {
	proto.RegisterType((*QueryParamsRequest)(nil), "ununifi.nftbackedloan.QueryParamsRequest")
	proto.RegisterType((*QueryParamsResponse)(nil), "ununifi.nftbackedloan.QueryParamsResponse")
	proto.RegisterType((*QueryListedNftRequest)(nil), "ununifi.nftbackedloan.QueryListedNftRequest")
	proto.RegisterType((*QueryListedNftResponse)(nil), "ununifi.nftbackedloan.QueryListedNftResponse")
	proto.RegisterType((*QueryListedNftsRequest)(nil), "ununifi.nftbackedloan.QueryListedNftsRequest")
	proto.RegisterType((*QueryListedClassesRequest)(nil), "ununifi.nftbackedloan.QueryListedClassesRequest")
	proto.RegisterType((*QueryListedClassRequest)(nil), "ununifi.nftbackedloan.QueryListedClassRequest")
	proto.RegisterType((*ListedNftDetail)(nil), "ununifi.nftbackedloan.ListedNftDetail")
	proto.RegisterType((*QueryListedNftsResponse)(nil), "ununifi.nftbackedloan.QueryListedNftsResponse")
	proto.RegisterType((*QueryListedClassesResponse)(nil), "ununifi.nftbackedloan.QueryListedClassesResponse")
	proto.RegisterType((*QueryListedClassResponse)(nil), "ununifi.nftbackedloan.QueryListedClassResponse")
	proto.RegisterType((*QueryLoanRequest)(nil), "ununifi.nftbackedloan.QueryLoanRequest")
	proto.RegisterType((*QueryLoanResponse)(nil), "ununifi.nftbackedloan.QueryLoanResponse")
	proto.RegisterType((*QueryNftBidsRequest)(nil), "ununifi.nftbackedloan.QueryNftBidsRequest")
	proto.RegisterType((*QueryNftBidsResponse)(nil), "ununifi.nftbackedloan.QueryNftBidsResponse")
	proto.RegisterType((*QueryBidderBidsRequest)(nil), "ununifi.nftbackedloan.QueryBidderBidsRequest")
	proto.RegisterType((*QueryBidderBidsResponse)(nil), "ununifi.nftbackedloan.QueryBidderBidsResponse")
	proto.RegisterType((*QueryRewardsRequest)(nil), "ununifi.nftbackedloan.QueryRewardsRequest")
	proto.RegisterType((*QueryRewardsResponse)(nil), "ununifi.nftbackedloan.QueryRewardsResponse")
	proto.RegisterType((*QueryLiquidationRequest)(nil), "ununifi.nftbackedloan.QueryLiquidationRequest")
	proto.RegisterType((*QueryLiquidationResponse)(nil), "ununifi.nftbackedloan.QueryLiquidationResponse")
}

func init() { proto.RegisterFile("ununifi/nftbackedloan/query.proto", fileDescriptor_7db9d9524c1d8ab8) }

var fileDescriptor_7db9d9524c1d8ab8 = []byte{
	// 1267 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x57, 0xcd, 0x6f, 0x1b, 0x45,
	0x14, 0xcf, 0x26, 0x8e, 0x9d, 0xbc, 0x24, 0x34, 0x0c, 0x69, 0x71, 0xdc, 0xc4, 0x09, 0xdb, 0x34,
	0x75, 0xd3, 0x7a, 0xb7, 0x49, 0x39, 0xf0, 0x21, 0x81, 0xe2, 0x44, 0x28, 0x81, 0x34, 0x10, 0xa3,
	0x4a, 0x80, 0x90, 0xac, 0xb1, 0x77, 0xed, 0x8c, 0x6a, 0xcf, 0x38, 0x3b, 0xe3, 0x86, 0xa8, 0xaa,
	0x40, 0x1c, 0xe0, 0x8a, 0x00, 0x89, 0x8f, 0x2b, 0x37, 0xce, 0xfc, 0x11, 0x3d, 0x56, 0x70, 0xe1,
	0x14, 0xa1, 0x84, 0x23, 0xa7, 0xfe, 0x05, 0x68, 0x67, 0x66, 0xd7, 0x1f, 0x89, 0xd7, 0xdb, 0xe6,
	0xe4, 0x9d, 0x99, 0xf7, 0x7e, 0xef, 0x37, 0x6f, 0xde, 0xfc, 0xde, 0x18, 0x5e, 0x6b, 0xd1, 0x16,
	0x25, 0x55, 0x62, 0xd3, 0xaa, 0x28, 0xe3, 0xca, 0x03, 0xd7, 0xa9, 0x33, 0x4c, 0xed, 0x83, 0x96,
	0xeb, 0x1d, 0x59, 0x4d, 0x8f, 0x09, 0x86, 0x2e, 0x6b, 0x13, 0xab, 0xcb, 0x24, 0x33, 0x53, 0x63,
	0x35, 0x26, 0x2d, 0x6c, 0xff, 0x4b, 0x19, 0x67, 0xe6, 0x6a, 0x8c, 0xd5, 0xea, 0xae, 0x8d, 0x9b,
	0xc4, 0xc6, 0x94, 0x32, 0x81, 0x05, 0x61, 0x94, 0xeb, 0xd5, 0x05, 0xbd, 0x2a, 0x47, 0xe5, 0x56,
	0xd5, 0x16, 0xa4, 0xe1, 0x72, 0x81, 0x1b, 0x4d, 0x6d, 0xb0, 0x52, 0x61, 0xbc, 0xc1, 0xb8, 0x5d,
	0xc6, 0xdc, 0x55, 0x24, 0xec, 0x87, 0xab, 0x65, 0x57, 0xe0, 0x55, 0xbb, 0x89, 0x6b, 0x84, 0x4a,
	0x34, 0x6d, 0x9b, 0xed, 0xb4, 0x0d, 0xac, 0x2a, 0x8c, 0x04, 0xeb, 0xb3, 0x6a, 0xbd, 0xa4, 0x38,
	0xaa, 0x81, 0x5e, 0x32, 0xcf, 0xdf, 0x75, 0x13, 0x7b, 0xb8, 0x11, 0xd8, 0xdc, 0x3c, 0xdf, 0xa6,
	0x6b, 0xa4, 0x4c, 0xcd, 0x19, 0x40, 0x7b, 0x3e, 0xd7, 0x8f, 0xa4, 0x7f, 0xd1, 0x3d, 0x68, 0xb9,
	0x5c, 0x98, 0x45, 0x78, 0xa5, 0x6b, 0x96, 0x37, 0x19, 0xe5, 0x2e, 0x7a, 0x1b, 0x92, 0x2a, 0x4e,
	0xda, 0x58, 0x34, 0x72, 0x13, 0x6b, 0xf3, 0xd6, 0xb9, 0xf9, 0xb5, 0x94, 0x5b, 0x21, 0xf1, 0xe4,
	0x78, 0x61, 0xa8, 0xa8, 0x5d, 0xcc, 0x7b, 0x70, 0x59, 0x62, 0xee, 0x10, 0x2e, 0x5c, 0x67, 0xb7,
	0x2a, 0x74, 0x30, 0x34, 0x0b, 0x63, 0x95, 0x3a, 0xe6, 0xbc, 0x44, 0x1c, 0x89, 0x3b, 0x5e, 0x4c,
	0xc9, 0xf1, 0xb6, 0xe3, 0x2f, 0x09, 0xf6, 0xc0, 0xa5, 0xfe, 0xd2, 0xb0, 0x5a, 0x92, 0xe3, 0x6d,
	0xc7, 0xfc, 0x04, 0xae, 0xf4, 0xc2, 0x69, 0x96, 0xef, 0x40, 0xaa, 0x4e, 0xb8, 0x20, 0xb4, 0xa6,
	0x69, 0x66, 0xfb, 0xd0, 0xdc, 0x51, 0x56, 0x9a, 0x67, 0xe0, 0x64, 0xf2, 0x5e, 0xe4, 0x20, 0x2d,
	0xe8, 0x53, 0x18, 0x65, 0x87, 0xd4, 0xf5, 0x14, 0xcd, 0xc2, 0xc6, 0xb3, 0xe3, 0x85, 0xc9, 0x23,
	0xdc, 0xa8, 0xbf, 0x65, 0xca, 0x69, 0xf3, 0xcf, 0x3f, 0xf2, 0x76, 0x8d, 0x88, 0xfd, 0x56, 0xd9,
	0xaa, 0xb0, 0x86, 0x7d, 0x9f, 0xde, 0xa7, 0xe4, 0x3d, 0x62, 0x57, 0xf6, 0x31, 0xa1, 0xb6, 0x38,
	0x6a, 0xba, 0xdc, 0xfa, 0x58, 0x78, 0x84, 0xd6, 0xd6, 0x2b, 0x95, 0x75, 0xc7, 0xf1, 0x5c, 0xce,
	0x8b, 0x0a, 0xd1, 0x7c, 0x03, 0x66, 0x3b, 0x82, 0x6e, 0xf8, 0xfb, 0x77, 0xc3, 0xb8, 0x57, 0x61,
	0x9c, 0x56, 0x45, 0xa9, 0x4e, 0x1a, 0x44, 0xc8, 0xd8, 0xa3, 0xc5, 0x31, 0x5a, 0x15, 0x3b, 0xfe,
	0xd8, 0xdc, 0x83, 0x57, 0x7b, 0x3d, 0x63, 0x64, 0xb6, 0x0b, 0x72, 0xb8, 0x07, 0xf2, 0x7b, 0x03,
	0x2e, 0x85, 0xbb, 0xdf, 0x74, 0x05, 0x26, 0xf5, 0x8b, 0x66, 0x15, 0xbd, 0x0b, 0x3e, 0x7e, 0x89,
	0xd0, 0x2a, 0x93, 0xf1, 0xfa, 0x03, 0xec, 0x56, 0xc5, 0x36, 0xad, 0xb2, 0x00, 0x80, 0xaa, 0xa1,
	0x59, 0xe9, 0xda, 0xa7, 0x3a, 0x16, 0x7d, 0xe2, 0x5b, 0x30, 0xa6, 0xc3, 0xf8, 0x95, 0x39, 0x92,
	0x9b, 0x58, 0x5b, 0x8e, 0x20, 0xd7, 0xb1, 0x2b, 0x1d, 0x23, 0xf4, 0x36, 0x6b, 0x90, 0x39, 0xef,
	0x18, 0x74, 0x9c, 0x6d, 0x50, 0xf9, 0x73, 0x83, 0x30, 0x76, 0x9f, 0x30, 0x67, 0x0f, 0x44, 0x21,
	0x14, 0x03, 0x7f, 0xf3, 0xab, 0x61, 0x48, 0xf7, 0xb3, 0x8a, 0x3a, 0x37, 0x04, 0x09, 0x8a, 0x1b,
	0xae, 0xbe, 0x0d, 0xf2, 0x1b, 0x2d, 0xc2, 0x84, 0xe3, 0xf2, 0x8a, 0x47, 0x9a, 0xbe, 0xc4, 0xa4,
	0x47, 0xe4, 0x52, 0xe7, 0x14, 0xba, 0x02, 0x49, 0x7e, 0xd4, 0x28, 0xb3, 0x7a, 0x3a, 0x21, 0x17,
	0xf5, 0x08, 0x4d, 0xc3, 0x48, 0xcb, 0x23, 0xe9, 0x51, 0x39, 0xe9, 0x7f, 0xa2, 0x34, 0xa4, 0x5a,
	0x1e, 0xd9, 0xc7, 0x7c, 0x3f, 0x9d, 0x54, 0x91, 0xf5, 0x10, 0xad, 0x41, 0x82, 0x56, 0x05, 0x4f,
	0xa7, 0xe4, 0xce, 0x07, 0x1c, 0x5e, 0x51, 0xda, 0x06, 0x55, 0x56, 0x61, 0x2d, 0x2a, 0xd2, 0x63,
	0x8b, 0x46, 0x2e, 0x21, 0xab, 0x6c, 0xc3, 0x1f, 0x9b, 0x5b, 0x30, 0xad, 0x32, 0xc0, 0x30, 0xbd,
	0x98, 0x16, 0xfc, 0x3e, 0x0c, 0x2f, 0x77, 0x40, 0xe9, 0x2c, 0xbe, 0x09, 0x49, 0x59, 0x71, 0x8e,
	0x2e, 0xd8, 0xb9, 0x08, 0xca, 0x8e, 0xae, 0x84, 0x51, 0xbf, 0xda, 0x1c, 0xf4, 0x3e, 0x4c, 0x97,
	0x99, 0xe7, 0xb1, 0x43, 0x42, 0x6b, 0x25, 0xdc, 0x90, 0xf4, 0x55, 0xd1, 0xce, 0x5a, 0x5a, 0x8d,
	0x7d, 0xe9, 0xb6, 0xb4, 0x74, 0x5b, 0x1b, 0x8c, 0x50, 0x8d, 0x70, 0x29, 0x74, 0x5c, 0x97, 0x7e,
	0x68, 0x0b, 0xda, 0x53, 0xfa, 0xbe, 0x8d, 0xc4, 0x83, 0x7a, 0x29, 0xf4, 0x93, 0xd7, 0x12, 0x6d,
	0xc2, 0x94, 0x60, 0x02, 0xd7, 0x4b, 0x8e, 0xdb, 0x64, 0x9c, 0x08, 0x79, 0x98, 0x31, 0x70, 0x26,
	0xa5, 0xd7, 0xa6, 0x72, 0x32, 0x3f, 0xd0, 0xda, 0xbe, 0x5b, 0x15, 0x05, 0xe2, 0xf0, 0x8b, 0x65,
	0x7e, 0x07, 0x66, 0xba, 0xc1, 0x74, 0xee, 0x5f, 0x87, 0x44, 0x99, 0x38, 0xc1, 0x35, 0xc9, 0xf4,
	0xc9, 0x7c, 0x81, 0x04, 0x79, 0x97, 0xd6, 0xe6, 0x43, 0xad, 0xbc, 0x05, 0xe2, 0x38, 0xae, 0xd7,
	0xc9, 0xee, 0x73, 0x48, 0x96, 0xe5, 0xa4, 0x96, 0xde, 0xcd, 0x67, 0xc7, 0x0b, 0x53, 0x4a, 0x7a,
	0xd5, 0xfc, 0x0b, 0x69, 0xaf, 0xc6, 0x34, 0x3f, 0xd4, 0xd2, 0xd2, 0x19, 0xf7, 0x42, 0x1b, 0xb1,
	0x75, 0x8e, 0x8b, 0xee, 0x21, 0xf6, 0xda, 0xbb, 0x48, 0x43, 0x0a, 0xab, 0xd0, 0x72, 0x1b, 0x89,
	0x62, 0x30, 0x34, 0xf7, 0x74, 0x1e, 0x43, 0x87, 0xb0, 0x86, 0x53, 0x9e, 0x9a, 0xd2, 0x0c, 0x06,
	0x1e, 0x76, 0x60, 0x1f, 0x6e, 0x6a, 0x87, 0x1c, 0xb4, 0x88, 0x23, 0x5f, 0x1f, 0x17, 0x3b, 0x6b,
	0x12, 0x2a, 0x56, 0x07, 0xa0, 0xe6, 0x79, 0x0f, 0x26, 0xeb, 0xed, 0xe9, 0xe0, 0x7d, 0x70, 0xad,
	0xaf, 0x0a, 0xb7, 0x4d, 0x25, 0x6d, 0xa3, 0xd8, 0xe5, 0xbe, 0xf6, 0xdf, 0x04, 0x8c, 0xca, 0x58,
	0xe8, 0x1b, 0x03, 0x92, 0xea, 0x39, 0x81, 0x6e, 0x46, 0x89, 0x6d, 0xd7, 0xfb, 0x25, 0xb3, 0x12,
	0xc7, 0x54, 0x51, 0x37, 0xaf, 0x7f, 0xfd, 0xd7, 0xbf, 0x3f, 0x0c, 0x2f, 0xa0, 0x79, 0x3b, 0xea,
	0x65, 0x85, 0x7e, 0x32, 0x00, 0xda, 0xad, 0x07, 0xe5, 0x07, 0x2b, 0x7f, 0xc7, 0xcb, 0x21, 0x63,
	0xc5, 0x35, 0xd7, 0xa4, 0x56, 0x24, 0xa9, 0x25, 0x64, 0xf6, 0x21, 0x55, 0x97, 0x2e, 0x79, 0x29,
	0xb2, 0x3f, 0x1b, 0x30, 0x1e, 0x42, 0xa0, 0xdb, 0xb1, 0x22, 0x05, 0xbc, 0xf2, 0x31, 0xad, 0x35,
	0x2d, 0x4b, 0xd2, 0xca, 0xa1, 0xe5, 0xc1, 0xb4, 0xfc, 0x15, 0xf4, 0x9b, 0x01, 0x53, 0x5d, 0xad,
	0x14, 0xdd, 0x89, 0xd9, 0x31, 0xc3, 0xc7, 0x4f, 0x66, 0xf5, 0x39, 0x3c, 0x34, 0xcd, 0xbc, 0xa4,
	0x79, 0x03, 0x5d, 0x8f, 0xa6, 0xa9, 0x7b, 0xb1, 0xcf, 0x72, 0xa2, 0x03, 0x08, 0x59, 0xb1, 0xbb,
	0xba, 0x62, 0xf8, 0xbc, 0xaf, 0x00, 0xf3, 0xae, 0xe4, 0x97, 0x47, 0xb7, 0x62, 0xf1, 0xb3, 0xe5,
	0x2f, 0xfa, 0x12, 0x12, 0x7e, 0x7b, 0x43, 0x37, 0x22, 0xa3, 0xb5, 0x7b, 0x69, 0x26, 0x37, 0xd8,
	0x50, 0xf3, 0x59, 0x92, 0x7c, 0xb2, 0x68, 0xae, 0x1f, 0x1f, 0x86, 0x29, 0x47, 0xdf, 0x1a, 0x90,
	0xd2, 0x3a, 0x8f, 0x22, 0x2f, 0x58, 0x77, 0x67, 0xc9, 0xdc, 0x8a, 0x65, 0xab, 0xa9, 0x5c, 0x93,
	0x54, 0xe6, 0xd1, 0xd5, 0x3e, 0x54, 0x7c, 0x79, 0x45, 0xbf, 0x18, 0x00, 0x6d, 0xad, 0x8e, 0xbe,
	0x8b, 0x67, 0x7a, 0x49, 0xf4, 0x5d, 0x3c, 0xdb, 0x02, 0xcc, 0xdb, 0x92, 0xd2, 0x32, 0x5a, 0x8a,
	0xa0, 0x64, 0x3f, 0x52, 0xad, 0xe4, 0x31, 0xfa, 0xd1, 0x80, 0x94, 0x56, 0xf1, 0xe8, 0x2c, 0x75,
	0xf7, 0x86, 0xe8, 0x2c, 0xf5, 0xb4, 0x05, 0xf3, 0x8e, 0xa4, 0xb4, 0x82, 0x72, 0x7d, 0x28, 0xe9,
	0x1e, 0x60, 0x3f, 0xd2, 0xfd, 0xe5, 0x31, 0xfa, 0x55, 0xd6, 0x78, 0x28, 0xb1, 0x83, 0x6a, 0xbc,
	0xb7, 0x65, 0x0c, 0xaa, 0xf1, 0x33, 0x1d, 0x21, 0x86, 0x82, 0x85, 0x3e, 0x85, 0xad, 0x27, 0x27,
	0x59, 0xe3, 0xe9, 0x49, 0xd6, 0xf8, 0xe7, 0x24, 0x6b, 0x7c, 0x77, 0x9a, 0x1d, 0x7a, 0x7a, 0x9a,
	0x1d, 0xfa, 0xfb, 0x34, 0x3b, 0xf4, 0x99, 0xd5, 0xb7, 0xa5, 0x7f, 0xd1, 0x83, 0x27, 0x5b, 0x7c,
	0x39, 0x29, 0xff, 0xd5, 0xde, 0xfd, 0x3f, 0x00, 0x00, 0xff, 0xff, 0xd4, 0xac, 0x03, 0x1c, 0x1c,
	0x10, 0x00, 0x00,
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// QueryClient is the client API for Query service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type QueryClient interface {
	Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error)
	ListedNfts(ctx context.Context, in *QueryListedNftsRequest, opts ...grpc.CallOption) (*QueryListedNftsResponse, error)
	ListedNft(ctx context.Context, in *QueryListedNftRequest, opts ...grpc.CallOption) (*QueryListedNftResponse, error)
	ListedClasses(ctx context.Context, in *QueryListedClassesRequest, opts ...grpc.CallOption) (*QueryListedClassesResponse, error)
	ListedClass(ctx context.Context, in *QueryListedClassRequest, opts ...grpc.CallOption) (*QueryListedClassResponse, error)
	Loan(ctx context.Context, in *QueryLoanRequest, opts ...grpc.CallOption) (*QueryLoanResponse, error)
	NftBids(ctx context.Context, in *QueryNftBidsRequest, opts ...grpc.CallOption) (*QueryNftBidsResponse, error)
	BidderBids(ctx context.Context, in *QueryBidderBidsRequest, opts ...grpc.CallOption) (*QueryBidderBidsResponse, error)
	Rewards(ctx context.Context, in *QueryRewardsRequest, opts ...grpc.CallOption) (*QueryRewardsResponse, error)
	Liquidation(ctx context.Context, in *QueryLiquidationRequest, opts ...grpc.CallOption) (*QueryLiquidationResponse, error)
}

type queryClient struct {
	cc grpc1.ClientConn
}

func NewQueryClient(cc grpc1.ClientConn) QueryClient {
	return &queryClient{cc}
}

func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) {
	out := new(QueryParamsResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/Params", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) ListedNfts(ctx context.Context, in *QueryListedNftsRequest, opts ...grpc.CallOption) (*QueryListedNftsResponse, error) {
	out := new(QueryListedNftsResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/ListedNfts", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) ListedNft(ctx context.Context, in *QueryListedNftRequest, opts ...grpc.CallOption) (*QueryListedNftResponse, error) {
	out := new(QueryListedNftResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/ListedNft", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) ListedClasses(ctx context.Context, in *QueryListedClassesRequest, opts ...grpc.CallOption) (*QueryListedClassesResponse, error) {
	out := new(QueryListedClassesResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/ListedClasses", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) ListedClass(ctx context.Context, in *QueryListedClassRequest, opts ...grpc.CallOption) (*QueryListedClassResponse, error) {
	out := new(QueryListedClassResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/ListedClass", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) Loan(ctx context.Context, in *QueryLoanRequest, opts ...grpc.CallOption) (*QueryLoanResponse, error) {
	out := new(QueryLoanResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/Loan", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) NftBids(ctx context.Context, in *QueryNftBidsRequest, opts ...grpc.CallOption) (*QueryNftBidsResponse, error) {
	out := new(QueryNftBidsResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/NftBids", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) BidderBids(ctx context.Context, in *QueryBidderBidsRequest, opts ...grpc.CallOption) (*QueryBidderBidsResponse, error) {
	out := new(QueryBidderBidsResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/BidderBids", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) Rewards(ctx context.Context, in *QueryRewardsRequest, opts ...grpc.CallOption) (*QueryRewardsResponse, error) {
	out := new(QueryRewardsResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/Rewards", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *queryClient) Liquidation(ctx context.Context, in *QueryLiquidationRequest, opts ...grpc.CallOption) (*QueryLiquidationResponse, error) {
	out := new(QueryLiquidationResponse)
	err := c.cc.Invoke(ctx, "/ununifi.nftbackedloan.Query/Liquidation", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// QueryServer is the server API for Query service.
type QueryServer interface {
	Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error)
	ListedNfts(context.Context, *QueryListedNftsRequest) (*QueryListedNftsResponse, error)
	ListedNft(context.Context, *QueryListedNftRequest) (*QueryListedNftResponse, error)
	ListedClasses(context.Context, *QueryListedClassesRequest) (*QueryListedClassesResponse, error)
	ListedClass(context.Context, *QueryListedClassRequest) (*QueryListedClassResponse, error)
	Loan(context.Context, *QueryLoanRequest) (*QueryLoanResponse, error)
	NftBids(context.Context, *QueryNftBidsRequest) (*QueryNftBidsResponse, error)
	BidderBids(context.Context, *QueryBidderBidsRequest) (*QueryBidderBidsResponse, error)
	Rewards(context.Context, *QueryRewardsRequest) (*QueryRewardsResponse, error)
	Liquidation(context.Context, *QueryLiquidationRequest) (*QueryLiquidationResponse, error)
}

// UnimplementedQueryServer can be embedded to have forward compatible implementations.
type UnimplementedQueryServer struct {
}

func (*UnimplementedQueryServer) Params(ctx context.Context, req *QueryParamsRequest) (*QueryParamsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Params not implemented")
}
func (*UnimplementedQueryServer) ListedNfts(ctx context.Context, req *QueryListedNftsRequest) (*QueryListedNftsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListedNfts not implemented")
}
func (*UnimplementedQueryServer) ListedNft(ctx context.Context, req *QueryListedNftRequest) (*QueryListedNftResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListedNft not implemented")
}
func (*UnimplementedQueryServer) ListedClasses(ctx context.Context, req *QueryListedClassesRequest) (*QueryListedClassesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListedClasses not implemented")
}
func (*UnimplementedQueryServer) ListedClass(ctx context.Context, req *QueryListedClassRequest) (*QueryListedClassResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListedClass not implemented")
}
func (*UnimplementedQueryServer) Loan(ctx context.Context, req *QueryLoanRequest) (*QueryLoanResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Loan not implemented")
}
func (*UnimplementedQueryServer) NftBids(ctx context.Context, req *QueryNftBidsRequest) (*QueryNftBidsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method NftBids not implemented")
}
func (*UnimplementedQueryServer) BidderBids(ctx context.Context, req *QueryBidderBidsRequest) (*QueryBidderBidsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BidderBids not implemented")
}
func (*UnimplementedQueryServer) Rewards(ctx context.Context, req *QueryRewardsRequest) (*QueryRewardsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Rewards not implemented")
}
func (*UnimplementedQueryServer) Liquidation(ctx context.Context, req *QueryLiquidationRequest) (*QueryLiquidationResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Liquidation not implemented")
}

func RegisterQueryServer(s grpc1.Server, srv QueryServer) {
	s.RegisterService(&_Query_serviceDesc, srv)
}

func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryParamsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).Params(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/Params",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_ListedNfts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryListedNftsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).ListedNfts(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/ListedNfts",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).ListedNfts(ctx, req.(*QueryListedNftsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_ListedNft_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryListedNftRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).ListedNft(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/ListedNft",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).ListedNft(ctx, req.(*QueryListedNftRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_ListedClasses_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryListedClassesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).ListedClasses(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/ListedClasses",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).ListedClasses(ctx, req.(*QueryListedClassesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_ListedClass_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryListedClassRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).ListedClass(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/ListedClass",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).ListedClass(ctx, req.(*QueryListedClassRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_Loan_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryLoanRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).Loan(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/Loan",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).Loan(ctx, req.(*QueryLoanRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_NftBids_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryNftBidsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).NftBids(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/NftBids",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).NftBids(ctx, req.(*QueryNftBidsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_BidderBids_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryBidderBidsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).BidderBids(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/BidderBids",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).BidderBids(ctx, req.(*QueryBidderBidsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_Rewards_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryRewardsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).Rewards(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/Rewards",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).Rewards(ctx, req.(*QueryRewardsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Query_Liquidation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryLiquidationRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(QueryServer).Liquidation(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ununifi.nftbackedloan.Query/Liquidation",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(QueryServer).Liquidation(ctx, req.(*QueryLiquidationRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _Query_serviceDesc = grpc.ServiceDesc{
	ServiceName: "ununifi.nftbackedloan.Query",
	HandlerType: (*QueryServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Params",
			Handler:    _Query_Params_Handler,
		},
		{
			MethodName: "ListedNfts",
			Handler:    _Query_ListedNfts_Handler,
		},
		{
			MethodName: "ListedNft",
			Handler:    _Query_ListedNft_Handler,
		},
		{
			MethodName: "ListedClasses",
			Handler:    _Query_ListedClasses_Handler,
		},
		{
			MethodName: "ListedClass",
			Handler:    _Query_ListedClass_Handler,
		},
		{
			MethodName: "Loan",
			Handler:    _Query_Loan_Handler,
		},
		{
			MethodName: "NftBids",
			Handler:    _Query_NftBids_Handler,
		},
		{
			MethodName: "BidderBids",
			Handler:    _Query_BidderBids_Handler,
		},
		{
			MethodName: "Rewards",
			Handler:    _Query_Rewards_Handler,
		},
		{
			MethodName: "Liquidation",
			Handler:    _Query_Liquidation_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "ununifi/nftbackedloan/query.proto",
}

func (m *QueryParamsRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryParamsRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	return len(dAtA) - i, nil
}

func (m *QueryParamsResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryParamsResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	{
		size, err := m.Params.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0xa
	return len(dAtA) - i, nil
}

func (m *QueryListedNftRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedNftRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedNftRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.TokenId) > 0 {
		i -= len(m.TokenId)
		copy(dAtA[i:], m.TokenId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.TokenId)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.ClassId) > 0 {
		i -= len(m.ClassId)
		copy(dAtA[i:], m.ClassId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.ClassId)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *QueryListedNftResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedNftResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedNftResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	{
		size, err := m.Listing.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0xa
	return len(dAtA) - i, nil
}

func (m *QueryListedNftsRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedNftsRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedNftsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Owner) > 0 {
		i -= len(m.Owner)
		copy(dAtA[i:], m.Owner)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.Owner)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *QueryListedClassesRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedClassesRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedClassesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.NftLimit != 0 {
		i = encodeVarintQuery(dAtA, i, uint64(m.NftLimit))
		i--
		dAtA[i] = 0x8
	}
	return len(dAtA) - i, nil
}

func (m *QueryListedClassRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedClassRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedClassRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.NftLimit != 0 {
		i = encodeVarintQuery(dAtA, i, uint64(m.NftLimit))
		i--
		dAtA[i] = 0x10
	}
	if len(m.ClassId) > 0 {
		i -= len(m.ClassId)
		copy(dAtA[i:], m.ClassId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.ClassId)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *ListedNftDetail) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *ListedNftDetail) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *ListedNftDetail) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	{
		size, err := m.NftInfo.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0x12
	{
		size, err := m.Listing.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0xa
	return len(dAtA) - i, nil
}

func (m *QueryListedNftsResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedNftsResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedNftsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Listings) > 0 {
		for iNdEx := len(m.Listings) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Listings[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintQuery(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0xa
		}
	}
	return len(dAtA) - i, nil
}

func (m *QueryListedClassesResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedClassesResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedClassesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Classes) > 0 {
		for iNdEx := len(m.Classes) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Classes[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintQuery(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0xa
		}
	}
	return len(dAtA) - i, nil
}

func (m *QueryListedClassResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryListedClassResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryListedClassResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.NftCount != 0 {
		i = encodeVarintQuery(dAtA, i, uint64(m.NftCount))
		i--
		dAtA[i] = 0x40
	}
	if len(m.Nfts) > 0 {
		for iNdEx := len(m.Nfts) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Nfts[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintQuery(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0x3a
		}
	}
	if len(m.Urihash) > 0 {
		i -= len(m.Urihash)
		copy(dAtA[i:], m.Urihash)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.Urihash)))
		i--
		dAtA[i] = 0x32
	}
	if len(m.Uri) > 0 {
		i -= len(m.Uri)
		copy(dAtA[i:], m.Uri)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.Uri)))
		i--
		dAtA[i] = 0x2a
	}
	if len(m.Symbol) > 0 {
		i -= len(m.Symbol)
		copy(dAtA[i:], m.Symbol)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.Symbol)))
		i--
		dAtA[i] = 0x22
	}
	if len(m.Description) > 0 {
		i -= len(m.Description)
		copy(dAtA[i:], m.Description)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.Description)))
		i--
		dAtA[i] = 0x1a
	}
	if len(m.Name) > 0 {
		i -= len(m.Name)
		copy(dAtA[i:], m.Name)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.Name)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.ClassId) > 0 {
		i -= len(m.ClassId)
		copy(dAtA[i:], m.ClassId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.ClassId)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *QueryLoanRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryLoanRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryLoanRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.TokenId) > 0 {
		i -= len(m.TokenId)
		copy(dAtA[i:], m.TokenId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.TokenId)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.ClassId) > 0 {
		i -= len(m.ClassId)
		copy(dAtA[i:], m.ClassId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.ClassId)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *QueryLoanResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryLoanResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryLoanResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	{
		size, err := m.TotalDeposit.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0x22
	{
		size, err := m.BorrowingLimit.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0x1a
	{
		size, err := m.BorrowingAmount.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0x12
	{
		size, err := m.NftId.MarshalToSizedBuffer(dAtA[:i])
		if err != nil {
			return 0, err
		}
		i -= size
		i = encodeVarintQuery(dAtA, i, uint64(size))
	}
	i--
	dAtA[i] = 0xa
	return len(dAtA) - i, nil
}

func (m *QueryNftBidsRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryNftBidsRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryNftBidsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.TokenId) > 0 {
		i -= len(m.TokenId)
		copy(dAtA[i:], m.TokenId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.TokenId)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.ClassId) > 0 {
		i -= len(m.ClassId)
		copy(dAtA[i:], m.ClassId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.ClassId)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *QueryNftBidsResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryNftBidsResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryNftBidsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Bids) > 0 {
		for iNdEx := len(m.Bids) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Bids[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintQuery(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0xa
		}
	}
	return len(dAtA) - i, nil
}

func (m *QueryBidderBidsRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryBidderBidsRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryBidderBidsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Bidder) > 0 {
		i -= len(m.Bidder)
		copy(dAtA[i:], m.Bidder)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.Bidder)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *QueryBidderBidsResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryBidderBidsResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryBidderBidsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Bids) > 0 {
		for iNdEx := len(m.Bids) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Bids[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintQuery(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0xa
		}
	}
	return len(dAtA) - i, nil
}

func (m *QueryRewardsRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryRewardsRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryRewardsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.Address != 0 {
		i = encodeVarintQuery(dAtA, i, uint64(m.Address))
		i--
		dAtA[i] = 0x8
	}
	return len(dAtA) - i, nil
}

func (m *QueryRewardsResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryRewardsResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryRewardsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.Rewards) > 0 {
		for iNdEx := len(m.Rewards) - 1; iNdEx >= 0; iNdEx-- {
			{
				size, err := m.Rewards[iNdEx].MarshalToSizedBuffer(dAtA[:i])
				if err != nil {
					return 0, err
				}
				i -= size
				i = encodeVarintQuery(dAtA, i, uint64(size))
			}
			i--
			dAtA[i] = 0xa
		}
	}
	return len(dAtA) - i, nil
}

func (m *QueryLiquidationRequest) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryLiquidationRequest) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryLiquidationRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if len(m.TokenId) > 0 {
		i -= len(m.TokenId)
		copy(dAtA[i:], m.TokenId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.TokenId)))
		i--
		dAtA[i] = 0x12
	}
	if len(m.ClassId) > 0 {
		i -= len(m.ClassId)
		copy(dAtA[i:], m.ClassId)
		i = encodeVarintQuery(dAtA, i, uint64(len(m.ClassId)))
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func (m *QueryLiquidationResponse) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalToSizedBuffer(dAtA[:size])
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *QueryLiquidationResponse) MarshalTo(dAtA []byte) (int, error) {
	size := m.Size()
	return m.MarshalToSizedBuffer(dAtA[:size])
}

func (m *QueryLiquidationResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) {
	i := len(dAtA)
	_ = i
	var l int
	_ = l
	if m.Liquidations != nil {
		{
			size, err := m.Liquidations.MarshalToSizedBuffer(dAtA[:i])
			if err != nil {
				return 0, err
			}
			i -= size
			i = encodeVarintQuery(dAtA, i, uint64(size))
		}
		i--
		dAtA[i] = 0xa
	}
	return len(dAtA) - i, nil
}

func encodeVarintQuery(dAtA []byte, offset int, v uint64) int {
	offset -= sovQuery(v)
	base := offset
	for v >= 1<<7 {
		dAtA[offset] = uint8(v&0x7f | 0x80)
		v >>= 7
		offset++
	}
	dAtA[offset] = uint8(v)
	return base
}
func (m *QueryParamsRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	return n
}

func (m *QueryParamsResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = m.Params.Size()
	n += 1 + l + sovQuery(uint64(l))
	return n
}

func (m *QueryListedNftRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.ClassId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.TokenId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	return n
}

func (m *QueryListedNftResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = m.Listing.Size()
	n += 1 + l + sovQuery(uint64(l))
	return n
}

func (m *QueryListedNftsRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Owner)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	return n
}

func (m *QueryListedClassesRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.NftLimit != 0 {
		n += 1 + sovQuery(uint64(m.NftLimit))
	}
	return n
}

func (m *QueryListedClassRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.ClassId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	if m.NftLimit != 0 {
		n += 1 + sovQuery(uint64(m.NftLimit))
	}
	return n
}

func (m *ListedNftDetail) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = m.Listing.Size()
	n += 1 + l + sovQuery(uint64(l))
	l = m.NftInfo.Size()
	n += 1 + l + sovQuery(uint64(l))
	return n
}

func (m *QueryListedNftsResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if len(m.Listings) > 0 {
		for _, e := range m.Listings {
			l = e.Size()
			n += 1 + l + sovQuery(uint64(l))
		}
	}
	return n
}

func (m *QueryListedClassesResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if len(m.Classes) > 0 {
		for _, e := range m.Classes {
			l = e.Size()
			n += 1 + l + sovQuery(uint64(l))
		}
	}
	return n
}

func (m *QueryListedClassResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.ClassId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.Name)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.Description)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.Symbol)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.Uri)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.Urihash)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	if len(m.Nfts) > 0 {
		for _, e := range m.Nfts {
			l = e.Size()
			n += 1 + l + sovQuery(uint64(l))
		}
	}
	if m.NftCount != 0 {
		n += 1 + sovQuery(uint64(m.NftCount))
	}
	return n
}

func (m *QueryLoanRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.ClassId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.TokenId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	return n
}

func (m *QueryLoanResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = m.NftId.Size()
	n += 1 + l + sovQuery(uint64(l))
	l = m.BorrowingAmount.Size()
	n += 1 + l + sovQuery(uint64(l))
	l = m.BorrowingLimit.Size()
	n += 1 + l + sovQuery(uint64(l))
	l = m.TotalDeposit.Size()
	n += 1 + l + sovQuery(uint64(l))
	return n
}

func (m *QueryNftBidsRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.ClassId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.TokenId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	return n
}

func (m *QueryNftBidsResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if len(m.Bids) > 0 {
		for _, e := range m.Bids {
			l = e.Size()
			n += 1 + l + sovQuery(uint64(l))
		}
	}
	return n
}

func (m *QueryBidderBidsRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.Bidder)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	return n
}

func (m *QueryBidderBidsResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if len(m.Bids) > 0 {
		for _, e := range m.Bids {
			l = e.Size()
			n += 1 + l + sovQuery(uint64(l))
		}
	}
	return n
}

func (m *QueryRewardsRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.Address != 0 {
		n += 1 + sovQuery(uint64(m.Address))
	}
	return n
}

func (m *QueryRewardsResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if len(m.Rewards) > 0 {
		for _, e := range m.Rewards {
			l = e.Size()
			n += 1 + l + sovQuery(uint64(l))
		}
	}
	return n
}

func (m *QueryLiquidationRequest) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	l = len(m.ClassId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	l = len(m.TokenId)
	if l > 0 {
		n += 1 + l + sovQuery(uint64(l))
	}
	return n
}

func (m *QueryLiquidationResponse) Size() (n int) {
	if m == nil {
		return 0
	}
	var l int
	_ = l
	if m.Liquidations != nil {
		l = m.Liquidations.Size()
		n += 1 + l + sovQuery(uint64(l))
	}
	return n
}

func sovQuery(x uint64) (n int) {
	return (math_bits.Len64(x|1) + 6) / 7
}
func sozQuery(x uint64) (n int) {
	return sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *QueryParamsRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedNftRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedNftRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedNftRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ClassId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ClassId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field TokenId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.TokenId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedNftResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedNftResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedNftResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Listing", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.Listing.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedNftsRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedNftsRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedNftsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Owner", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Owner = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedClassesRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedClassesRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedClassesRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field NftLimit", wireType)
			}
			m.NftLimit = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.NftLimit |= int32(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedClassRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedClassRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedClassRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ClassId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ClassId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field NftLimit", wireType)
			}
			m.NftLimit = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.NftLimit |= int32(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *ListedNftDetail) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: ListedNftDetail: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: ListedNftDetail: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Listing", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.Listing.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field NftInfo", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.NftInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedNftsResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedNftsResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedNftsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Listings", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Listings = append(m.Listings, ListedNftDetail{})
			if err := m.Listings[len(m.Listings)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedClassesResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedClassesResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedClassesResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Classes", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Classes = append(m.Classes, &QueryListedClassResponse{})
			if err := m.Classes[len(m.Classes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryListedClassResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryListedClassResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryListedClassResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ClassId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ClassId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Name = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Description = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Symbol", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Symbol = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Uri", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Uri = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 6:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Urihash", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Urihash = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 7:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Nfts", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Nfts = append(m.Nfts, &NftInfo{})
			if err := m.Nfts[len(m.Nfts)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 8:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field NftCount", wireType)
			}
			m.NftCount = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.NftCount |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryLoanRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryLoanRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryLoanRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ClassId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ClassId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field TokenId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.TokenId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryLoanResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryLoanResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryLoanResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field NftId", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.NftId.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field BorrowingAmount", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.BorrowingAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field BorrowingLimit", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.BorrowingLimit.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field TotalDeposit", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.TotalDeposit.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryNftBidsRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryNftBidsRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryNftBidsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ClassId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ClassId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field TokenId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.TokenId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryNftBidsResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryNftBidsResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryNftBidsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Bids", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Bids = append(m.Bids, Bid{})
			if err := m.Bids[len(m.Bids)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryBidderBidsRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryBidderBidsRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryBidderBidsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Bidder", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Bidder = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryBidderBidsResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryBidderBidsResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryBidderBidsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Bids", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Bids = append(m.Bids, Bid{})
			if err := m.Bids[len(m.Bids)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryRewardsRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryRewardsRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryRewardsRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType)
			}
			m.Address = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.Address |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryRewardsResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryRewardsResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryRewardsResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Rewards", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Rewards = append(m.Rewards, types.Coin{})
			if err := m.Rewards[len(m.Rewards)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryLiquidationRequest) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryLiquidationRequest: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryLiquidationRequest: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ClassId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.ClassId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field TokenId", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= uint64(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + intStringLen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.TokenId = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *QueryLiquidationResponse) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= uint64(b&0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: QueryLiquidationResponse: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: QueryLiquidationResponse: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Liquidations", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= int(b&0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthQuery
			}
			postIndex := iNdEx + msglen
			if postIndex < 0 {
				return ErrInvalidLengthQuery
			}
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if m.Liquidations == nil {
				m.Liquidations = &Liquidations{}
			}
			if err := m.Liquidations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipQuery(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if (skippy < 0) || (iNdEx+skippy) < 0 {
				return ErrInvalidLengthQuery
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func skipQuery(dAtA []byte) (n int, err error) {
	l := len(dAtA)
	iNdEx := 0
	depth := 0
	for iNdEx < l {
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return 0, ErrIntOverflowQuery
			}
			if iNdEx >= l {
				return 0, io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= (uint64(b) & 0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		wireType := int(wire & 0x7)
		switch wireType {
		case 0:
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return 0, ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return 0, io.ErrUnexpectedEOF
				}
				iNdEx++
				if dAtA[iNdEx-1] < 0x80 {
					break
				}
			}
		case 1:
			iNdEx += 8
		case 2:
			var length int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return 0, ErrIntOverflowQuery
				}
				if iNdEx >= l {
					return 0, io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				length |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if length < 0 {
				return 0, ErrInvalidLengthQuery
			}
			iNdEx += length
		case 3:
			depth++
		case 4:
			if depth == 0 {
				return 0, ErrUnexpectedEndOfGroupQuery
			}
			depth--
		case 5:
			iNdEx += 4
		default:
			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
		}
		if iNdEx < 0 {
			return 0, ErrInvalidLengthQuery
		}
		if depth == 0 {
			return iNdEx, nil
		}
	}
	return 0, io.ErrUnexpectedEOF
}

var (
	ErrInvalidLengthQuery        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowQuery          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupQuery = fmt.Errorf("proto: unexpected end of group")
)
