// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc             (unknown)
// source: ring/v1/service.proto

package ringv1

import (
	context "context"
	v1 "github.com/CaduceusMetaverseProtocol/metaprotocol/gen/proto/go/base/v1"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
)

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7

// RingServiceClient is the client API for RingService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type RingServiceClient interface {
	// web3
	Sha3(ctx context.Context, in *Sha3Request, opts ...grpc.CallOption) (*Sha3Response, error)
	NodeVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NodeVersionResponse, error)
	// network info service
	NetVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NetVersionResponse, error)
	NetPeerCount(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NetPeerCountResponse, error)
	// node status
	ProtocolVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ProtocolVersionResponse, error)
	Syncing(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*SyncingResponse, error)
	Coinbase(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*CoinbaseResponse, error)
	Mining(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*MiningResponse, error)
	HashRate(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*HashRateResponse, error)
	Accounts(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*AccountsResponse, error)
	// tx operatoration
	GasPrice(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*GasPriceResponse, error)
	// block info service
	BlockNumber(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*HeightResponse, error)
	BlockByHash(ctx context.Context, in *BlockByHashRequest, opts ...grpc.CallOption) (*BlockByHashResponse, error)
	BlockByNumber(ctx context.Context, in *BlockByNumberRequest, opts ...grpc.CallOption) (*BlockByNumberResponse, error)
	BlockTransactionCountByHash(ctx context.Context, in *BlockTransactionCountByHashRequest, opts ...grpc.CallOption) (*BlockTransactionCountByHashResponse, error)
	BlockTransactionCountByNumber(ctx context.Context, in *BlockTransactionCountByNumberRequest, opts ...grpc.CallOption) (*BlockTransactionCountByNumberResponse, error)
	UncleCountByHash(ctx context.Context, in *UncleCountByHashRequest, opts ...grpc.CallOption) (*UncleCountByHashResponse, error)
	UncleCountByNumber(ctx context.Context, in *UncleCountByNumberRequest, opts ...grpc.CallOption) (*UncleCountByNumberResponse, error)
	UncleByBlockHashAndIndex(ctx context.Context, in *UncleByBlockHashAndIndexRequest, opts ...grpc.CallOption) (*UncleByBlockHashAndIndexResponse, error)
	UncleByBlockNumberAndIndex(ctx context.Context, in *UncleByBlockNumberAndIndexRequest, opts ...grpc.CallOption) (*UncleByBlockNumberAndIndexResponse, error)
	// compiler
	Compilers(ctx context.Context, in *CompilersRequest, opts ...grpc.CallOption) (*CompilersResponse, error)
	CompileSolidity(ctx context.Context, in *CompileSolidityRequest, opts ...grpc.CallOption) (*CompileSolidityResponse, error)
	CompileLLL(ctx context.Context, in *CompileLLLRequest, opts ...grpc.CallOption) (*CompileLLLResponse, error)
	CompileSerpent(ctx context.Context, in *CompileSerpentRequest, opts ...grpc.CallOption) (*CompileSerpentResponse, error)
	// transaction info service
	EstimateGas(ctx context.Context, in *EstimateGasRequest, opts ...grpc.CallOption) (*EstimateGasResponse, error)
	TransactionByHash(ctx context.Context, in *TransactionByHashRequest, opts ...grpc.CallOption) (*TransactionByHashResponse, error)
	TransactionByBlockHashAndIndex(ctx context.Context, in *TransactionByBlockHashAndIndexRequest, opts ...grpc.CallOption) (*TransactionByBlockHashAndIndexResponse, error)
	TransactionByBlockNumberAndIndex(ctx context.Context, in *TransactionByBlockNumberAndIndexRequest, opts ...grpc.CallOption) (*TransactionByBlockNumberAndIndexResponse, error)
	TransactionReceipt(ctx context.Context, in *TransactionReceiptRequest, opts ...grpc.CallOption) (*TransactionReceiptResponse, error)
	// account info service
	Balance(ctx context.Context, in *BalanceRequest, opts ...grpc.CallOption) (*BalanceResponse, error)
	Storage(ctx context.Context, in *StorageRequest, opts ...grpc.CallOption) (*StorageResponse, error)
	Nonce(ctx context.Context, in *NonceRequest, opts ...grpc.CallOption) (*NonceResponse, error)
	RepeatedNonce(ctx context.Context, in *RepeatedNonceRequest, opts ...grpc.CallOption) (*RepeatedNonceResponse, error)
	TransactionCount(ctx context.Context, in *TransactionCountRequest, opts ...grpc.CallOption) (*TransactionCountResponse, error)
	GetCode(ctx context.Context, in *GetCodeRequest, opts ...grpc.CallOption) (*GetCodeResponse, error)
	Sign(ctx context.Context, in *SignRequest, opts ...grpc.CallOption) (*SignResponse, error)
	SignTransaction(ctx context.Context, in *SignTransactionRequest, opts ...grpc.CallOption) (*SignTransactionResponse, error)
	SendTransaction(ctx context.Context, in *v1.EthTransaction, opts ...grpc.CallOption) (*SendTransactionResponse, error)
	SendRawTransaction(ctx context.Context, in *SendRawTransactionRequest, opts ...grpc.CallOption) (*SendRawTransactionResponse, error)
	Call(ctx context.Context, in *CallRequest, opts ...grpc.CallOption) (*CallResponse, error)
	// filter
	NewFilter(ctx context.Context, in *NewFilterRequest, opts ...grpc.CallOption) (*NewFilterResponse, error)
	NewBlockFilter(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NewBlockFilterResponse, error)
	PendingTransactionFilter(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*PendingTransactionFilterResponse, error)
	UninstallFilter(ctx context.Context, in *UninstallFilterRequest, opts ...grpc.CallOption) (*UninstallFilterResponse, error)
	FilterChanges(ctx context.Context, in *FilterChangesRequest, opts ...grpc.CallOption) (*FilterChangesResponse, error)
	FilterLogs(ctx context.Context, in *FilterLogsRequest, opts ...grpc.CallOption) (*FilterLogsResponse, error)
	Logs(ctx context.Context, in *LogsRequest, opts ...grpc.CallOption) (*LogsResponse, error)
}

type ringServiceClient struct {
	cc grpc.ClientConnInterface
}

func NewRingServiceClient(cc grpc.ClientConnInterface) RingServiceClient {
	return &ringServiceClient{cc}
}

func (c *ringServiceClient) Sha3(ctx context.Context, in *Sha3Request, opts ...grpc.CallOption) (*Sha3Response, error) {
	out := new(Sha3Response)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Sha3", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) NodeVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NodeVersionResponse, error) {
	out := new(NodeVersionResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/NodeVersion", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) NetVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NetVersionResponse, error) {
	out := new(NetVersionResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/NetVersion", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) NetPeerCount(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NetPeerCountResponse, error) {
	out := new(NetPeerCountResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/NetPeerCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) ProtocolVersion(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ProtocolVersionResponse, error) {
	out := new(ProtocolVersionResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/ProtocolVersion", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Syncing(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*SyncingResponse, error) {
	out := new(SyncingResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Syncing", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Coinbase(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*CoinbaseResponse, error) {
	out := new(CoinbaseResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Coinbase", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Mining(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*MiningResponse, error) {
	out := new(MiningResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Mining", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) HashRate(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*HashRateResponse, error) {
	out := new(HashRateResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/HashRate", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Accounts(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*AccountsResponse, error) {
	out := new(AccountsResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Accounts", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) GasPrice(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*GasPriceResponse, error) {
	out := new(GasPriceResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/GasPrice", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) BlockNumber(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*HeightResponse, error) {
	out := new(HeightResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/BlockNumber", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) BlockByHash(ctx context.Context, in *BlockByHashRequest, opts ...grpc.CallOption) (*BlockByHashResponse, error) {
	out := new(BlockByHashResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/BlockByHash", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) BlockByNumber(ctx context.Context, in *BlockByNumberRequest, opts ...grpc.CallOption) (*BlockByNumberResponse, error) {
	out := new(BlockByNumberResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/BlockByNumber", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) BlockTransactionCountByHash(ctx context.Context, in *BlockTransactionCountByHashRequest, opts ...grpc.CallOption) (*BlockTransactionCountByHashResponse, error) {
	out := new(BlockTransactionCountByHashResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/BlockTransactionCountByHash", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) BlockTransactionCountByNumber(ctx context.Context, in *BlockTransactionCountByNumberRequest, opts ...grpc.CallOption) (*BlockTransactionCountByNumberResponse, error) {
	out := new(BlockTransactionCountByNumberResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/BlockTransactionCountByNumber", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) UncleCountByHash(ctx context.Context, in *UncleCountByHashRequest, opts ...grpc.CallOption) (*UncleCountByHashResponse, error) {
	out := new(UncleCountByHashResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/UncleCountByHash", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) UncleCountByNumber(ctx context.Context, in *UncleCountByNumberRequest, opts ...grpc.CallOption) (*UncleCountByNumberResponse, error) {
	out := new(UncleCountByNumberResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/UncleCountByNumber", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) UncleByBlockHashAndIndex(ctx context.Context, in *UncleByBlockHashAndIndexRequest, opts ...grpc.CallOption) (*UncleByBlockHashAndIndexResponse, error) {
	out := new(UncleByBlockHashAndIndexResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/UncleByBlockHashAndIndex", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) UncleByBlockNumberAndIndex(ctx context.Context, in *UncleByBlockNumberAndIndexRequest, opts ...grpc.CallOption) (*UncleByBlockNumberAndIndexResponse, error) {
	out := new(UncleByBlockNumberAndIndexResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/UncleByBlockNumberAndIndex", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Compilers(ctx context.Context, in *CompilersRequest, opts ...grpc.CallOption) (*CompilersResponse, error) {
	out := new(CompilersResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Compilers", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) CompileSolidity(ctx context.Context, in *CompileSolidityRequest, opts ...grpc.CallOption) (*CompileSolidityResponse, error) {
	out := new(CompileSolidityResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/CompileSolidity", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) CompileLLL(ctx context.Context, in *CompileLLLRequest, opts ...grpc.CallOption) (*CompileLLLResponse, error) {
	out := new(CompileLLLResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/CompileLLL", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) CompileSerpent(ctx context.Context, in *CompileSerpentRequest, opts ...grpc.CallOption) (*CompileSerpentResponse, error) {
	out := new(CompileSerpentResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/CompileSerpent", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) EstimateGas(ctx context.Context, in *EstimateGasRequest, opts ...grpc.CallOption) (*EstimateGasResponse, error) {
	out := new(EstimateGasResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/EstimateGas", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) TransactionByHash(ctx context.Context, in *TransactionByHashRequest, opts ...grpc.CallOption) (*TransactionByHashResponse, error) {
	out := new(TransactionByHashResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/TransactionByHash", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) TransactionByBlockHashAndIndex(ctx context.Context, in *TransactionByBlockHashAndIndexRequest, opts ...grpc.CallOption) (*TransactionByBlockHashAndIndexResponse, error) {
	out := new(TransactionByBlockHashAndIndexResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/TransactionByBlockHashAndIndex", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) TransactionByBlockNumberAndIndex(ctx context.Context, in *TransactionByBlockNumberAndIndexRequest, opts ...grpc.CallOption) (*TransactionByBlockNumberAndIndexResponse, error) {
	out := new(TransactionByBlockNumberAndIndexResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/TransactionByBlockNumberAndIndex", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) TransactionReceipt(ctx context.Context, in *TransactionReceiptRequest, opts ...grpc.CallOption) (*TransactionReceiptResponse, error) {
	out := new(TransactionReceiptResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/TransactionReceipt", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Balance(ctx context.Context, in *BalanceRequest, opts ...grpc.CallOption) (*BalanceResponse, error) {
	out := new(BalanceResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Balance", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Storage(ctx context.Context, in *StorageRequest, opts ...grpc.CallOption) (*StorageResponse, error) {
	out := new(StorageResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Storage", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Nonce(ctx context.Context, in *NonceRequest, opts ...grpc.CallOption) (*NonceResponse, error) {
	out := new(NonceResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Nonce", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) RepeatedNonce(ctx context.Context, in *RepeatedNonceRequest, opts ...grpc.CallOption) (*RepeatedNonceResponse, error) {
	out := new(RepeatedNonceResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/RepeatedNonce", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) TransactionCount(ctx context.Context, in *TransactionCountRequest, opts ...grpc.CallOption) (*TransactionCountResponse, error) {
	out := new(TransactionCountResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/TransactionCount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) GetCode(ctx context.Context, in *GetCodeRequest, opts ...grpc.CallOption) (*GetCodeResponse, error) {
	out := new(GetCodeResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/GetCode", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Sign(ctx context.Context, in *SignRequest, opts ...grpc.CallOption) (*SignResponse, error) {
	out := new(SignResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Sign", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) SignTransaction(ctx context.Context, in *SignTransactionRequest, opts ...grpc.CallOption) (*SignTransactionResponse, error) {
	out := new(SignTransactionResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/SignTransaction", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) SendTransaction(ctx context.Context, in *v1.EthTransaction, opts ...grpc.CallOption) (*SendTransactionResponse, error) {
	out := new(SendTransactionResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/SendTransaction", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) SendRawTransaction(ctx context.Context, in *SendRawTransactionRequest, opts ...grpc.CallOption) (*SendRawTransactionResponse, error) {
	out := new(SendRawTransactionResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/SendRawTransaction", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Call(ctx context.Context, in *CallRequest, opts ...grpc.CallOption) (*CallResponse, error) {
	out := new(CallResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Call", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) NewFilter(ctx context.Context, in *NewFilterRequest, opts ...grpc.CallOption) (*NewFilterResponse, error) {
	out := new(NewFilterResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/NewFilter", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) NewBlockFilter(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*NewBlockFilterResponse, error) {
	out := new(NewBlockFilterResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/NewBlockFilter", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) PendingTransactionFilter(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*PendingTransactionFilterResponse, error) {
	out := new(PendingTransactionFilterResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/PendingTransactionFilter", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) UninstallFilter(ctx context.Context, in *UninstallFilterRequest, opts ...grpc.CallOption) (*UninstallFilterResponse, error) {
	out := new(UninstallFilterResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/UninstallFilter", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) FilterChanges(ctx context.Context, in *FilterChangesRequest, opts ...grpc.CallOption) (*FilterChangesResponse, error) {
	out := new(FilterChangesResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/FilterChanges", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) FilterLogs(ctx context.Context, in *FilterLogsRequest, opts ...grpc.CallOption) (*FilterLogsResponse, error) {
	out := new(FilterLogsResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/FilterLogs", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *ringServiceClient) Logs(ctx context.Context, in *LogsRequest, opts ...grpc.CallOption) (*LogsResponse, error) {
	out := new(LogsResponse)
	err := c.cc.Invoke(ctx, "/ring.v1.RingService/Logs", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// RingServiceServer is the server API for RingService service.
// All implementations must embed UnimplementedRingServiceServer
// for forward compatibility
type RingServiceServer interface {
	// web3
	Sha3(context.Context, *Sha3Request) (*Sha3Response, error)
	NodeVersion(context.Context, *emptypb.Empty) (*NodeVersionResponse, error)
	// network info service
	NetVersion(context.Context, *emptypb.Empty) (*NetVersionResponse, error)
	NetPeerCount(context.Context, *emptypb.Empty) (*NetPeerCountResponse, error)
	// node status
	ProtocolVersion(context.Context, *emptypb.Empty) (*ProtocolVersionResponse, error)
	Syncing(context.Context, *emptypb.Empty) (*SyncingResponse, error)
	Coinbase(context.Context, *emptypb.Empty) (*CoinbaseResponse, error)
	Mining(context.Context, *emptypb.Empty) (*MiningResponse, error)
	HashRate(context.Context, *emptypb.Empty) (*HashRateResponse, error)
	Accounts(context.Context, *emptypb.Empty) (*AccountsResponse, error)
	// tx operatoration
	GasPrice(context.Context, *emptypb.Empty) (*GasPriceResponse, error)
	// block info service
	BlockNumber(context.Context, *emptypb.Empty) (*HeightResponse, error)
	BlockByHash(context.Context, *BlockByHashRequest) (*BlockByHashResponse, error)
	BlockByNumber(context.Context, *BlockByNumberRequest) (*BlockByNumberResponse, error)
	BlockTransactionCountByHash(context.Context, *BlockTransactionCountByHashRequest) (*BlockTransactionCountByHashResponse, error)
	BlockTransactionCountByNumber(context.Context, *BlockTransactionCountByNumberRequest) (*BlockTransactionCountByNumberResponse, error)
	UncleCountByHash(context.Context, *UncleCountByHashRequest) (*UncleCountByHashResponse, error)
	UncleCountByNumber(context.Context, *UncleCountByNumberRequest) (*UncleCountByNumberResponse, error)
	UncleByBlockHashAndIndex(context.Context, *UncleByBlockHashAndIndexRequest) (*UncleByBlockHashAndIndexResponse, error)
	UncleByBlockNumberAndIndex(context.Context, *UncleByBlockNumberAndIndexRequest) (*UncleByBlockNumberAndIndexResponse, error)
	// compiler
	Compilers(context.Context, *CompilersRequest) (*CompilersResponse, error)
	CompileSolidity(context.Context, *CompileSolidityRequest) (*CompileSolidityResponse, error)
	CompileLLL(context.Context, *CompileLLLRequest) (*CompileLLLResponse, error)
	CompileSerpent(context.Context, *CompileSerpentRequest) (*CompileSerpentResponse, error)
	// transaction info service
	EstimateGas(context.Context, *EstimateGasRequest) (*EstimateGasResponse, error)
	TransactionByHash(context.Context, *TransactionByHashRequest) (*TransactionByHashResponse, error)
	TransactionByBlockHashAndIndex(context.Context, *TransactionByBlockHashAndIndexRequest) (*TransactionByBlockHashAndIndexResponse, error)
	TransactionByBlockNumberAndIndex(context.Context, *TransactionByBlockNumberAndIndexRequest) (*TransactionByBlockNumberAndIndexResponse, error)
	TransactionReceipt(context.Context, *TransactionReceiptRequest) (*TransactionReceiptResponse, error)
	// account info service
	Balance(context.Context, *BalanceRequest) (*BalanceResponse, error)
	Storage(context.Context, *StorageRequest) (*StorageResponse, error)
	Nonce(context.Context, *NonceRequest) (*NonceResponse, error)
	RepeatedNonce(context.Context, *RepeatedNonceRequest) (*RepeatedNonceResponse, error)
	TransactionCount(context.Context, *TransactionCountRequest) (*TransactionCountResponse, error)
	GetCode(context.Context, *GetCodeRequest) (*GetCodeResponse, error)
	Sign(context.Context, *SignRequest) (*SignResponse, error)
	SignTransaction(context.Context, *SignTransactionRequest) (*SignTransactionResponse, error)
	SendTransaction(context.Context, *v1.EthTransaction) (*SendTransactionResponse, error)
	SendRawTransaction(context.Context, *SendRawTransactionRequest) (*SendRawTransactionResponse, error)
	Call(context.Context, *CallRequest) (*CallResponse, error)
	// filter
	NewFilter(context.Context, *NewFilterRequest) (*NewFilterResponse, error)
	NewBlockFilter(context.Context, *emptypb.Empty) (*NewBlockFilterResponse, error)
	PendingTransactionFilter(context.Context, *emptypb.Empty) (*PendingTransactionFilterResponse, error)
	UninstallFilter(context.Context, *UninstallFilterRequest) (*UninstallFilterResponse, error)
	FilterChanges(context.Context, *FilterChangesRequest) (*FilterChangesResponse, error)
	FilterLogs(context.Context, *FilterLogsRequest) (*FilterLogsResponse, error)
	Logs(context.Context, *LogsRequest) (*LogsResponse, error)
	mustEmbedUnimplementedRingServiceServer()
}

// UnimplementedRingServiceServer must be embedded to have forward compatible implementations.
type UnimplementedRingServiceServer struct {
}

func (UnimplementedRingServiceServer) Sha3(context.Context, *Sha3Request) (*Sha3Response, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Sha3 not implemented")
}
func (UnimplementedRingServiceServer) NodeVersion(context.Context, *emptypb.Empty) (*NodeVersionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method NodeVersion not implemented")
}
func (UnimplementedRingServiceServer) NetVersion(context.Context, *emptypb.Empty) (*NetVersionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method NetVersion not implemented")
}
func (UnimplementedRingServiceServer) NetPeerCount(context.Context, *emptypb.Empty) (*NetPeerCountResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method NetPeerCount not implemented")
}
func (UnimplementedRingServiceServer) ProtocolVersion(context.Context, *emptypb.Empty) (*ProtocolVersionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ProtocolVersion not implemented")
}
func (UnimplementedRingServiceServer) Syncing(context.Context, *emptypb.Empty) (*SyncingResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Syncing not implemented")
}
func (UnimplementedRingServiceServer) Coinbase(context.Context, *emptypb.Empty) (*CoinbaseResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Coinbase not implemented")
}
func (UnimplementedRingServiceServer) Mining(context.Context, *emptypb.Empty) (*MiningResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Mining not implemented")
}
func (UnimplementedRingServiceServer) HashRate(context.Context, *emptypb.Empty) (*HashRateResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method HashRate not implemented")
}
func (UnimplementedRingServiceServer) Accounts(context.Context, *emptypb.Empty) (*AccountsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Accounts not implemented")
}
func (UnimplementedRingServiceServer) GasPrice(context.Context, *emptypb.Empty) (*GasPriceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GasPrice not implemented")
}
func (UnimplementedRingServiceServer) BlockNumber(context.Context, *emptypb.Empty) (*HeightResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BlockNumber not implemented")
}
func (UnimplementedRingServiceServer) BlockByHash(context.Context, *BlockByHashRequest) (*BlockByHashResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BlockByHash not implemented")
}
func (UnimplementedRingServiceServer) BlockByNumber(context.Context, *BlockByNumberRequest) (*BlockByNumberResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BlockByNumber not implemented")
}
func (UnimplementedRingServiceServer) BlockTransactionCountByHash(context.Context, *BlockTransactionCountByHashRequest) (*BlockTransactionCountByHashResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BlockTransactionCountByHash not implemented")
}
func (UnimplementedRingServiceServer) BlockTransactionCountByNumber(context.Context, *BlockTransactionCountByNumberRequest) (*BlockTransactionCountByNumberResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method BlockTransactionCountByNumber not implemented")
}
func (UnimplementedRingServiceServer) UncleCountByHash(context.Context, *UncleCountByHashRequest) (*UncleCountByHashResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UncleCountByHash not implemented")
}
func (UnimplementedRingServiceServer) UncleCountByNumber(context.Context, *UncleCountByNumberRequest) (*UncleCountByNumberResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UncleCountByNumber not implemented")
}
func (UnimplementedRingServiceServer) UncleByBlockHashAndIndex(context.Context, *UncleByBlockHashAndIndexRequest) (*UncleByBlockHashAndIndexResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UncleByBlockHashAndIndex not implemented")
}
func (UnimplementedRingServiceServer) UncleByBlockNumberAndIndex(context.Context, *UncleByBlockNumberAndIndexRequest) (*UncleByBlockNumberAndIndexResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UncleByBlockNumberAndIndex not implemented")
}
func (UnimplementedRingServiceServer) Compilers(context.Context, *CompilersRequest) (*CompilersResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Compilers not implemented")
}
func (UnimplementedRingServiceServer) CompileSolidity(context.Context, *CompileSolidityRequest) (*CompileSolidityResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CompileSolidity not implemented")
}
func (UnimplementedRingServiceServer) CompileLLL(context.Context, *CompileLLLRequest) (*CompileLLLResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CompileLLL not implemented")
}
func (UnimplementedRingServiceServer) CompileSerpent(context.Context, *CompileSerpentRequest) (*CompileSerpentResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CompileSerpent not implemented")
}
func (UnimplementedRingServiceServer) EstimateGas(context.Context, *EstimateGasRequest) (*EstimateGasResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method EstimateGas not implemented")
}
func (UnimplementedRingServiceServer) TransactionByHash(context.Context, *TransactionByHashRequest) (*TransactionByHashResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method TransactionByHash not implemented")
}
func (UnimplementedRingServiceServer) TransactionByBlockHashAndIndex(context.Context, *TransactionByBlockHashAndIndexRequest) (*TransactionByBlockHashAndIndexResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method TransactionByBlockHashAndIndex not implemented")
}
func (UnimplementedRingServiceServer) TransactionByBlockNumberAndIndex(context.Context, *TransactionByBlockNumberAndIndexRequest) (*TransactionByBlockNumberAndIndexResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method TransactionByBlockNumberAndIndex not implemented")
}
func (UnimplementedRingServiceServer) TransactionReceipt(context.Context, *TransactionReceiptRequest) (*TransactionReceiptResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method TransactionReceipt not implemented")
}
func (UnimplementedRingServiceServer) Balance(context.Context, *BalanceRequest) (*BalanceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Balance not implemented")
}
func (UnimplementedRingServiceServer) Storage(context.Context, *StorageRequest) (*StorageResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Storage not implemented")
}
func (UnimplementedRingServiceServer) Nonce(context.Context, *NonceRequest) (*NonceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Nonce not implemented")
}
func (UnimplementedRingServiceServer) RepeatedNonce(context.Context, *RepeatedNonceRequest) (*RepeatedNonceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RepeatedNonce not implemented")
}
func (UnimplementedRingServiceServer) TransactionCount(context.Context, *TransactionCountRequest) (*TransactionCountResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method TransactionCount not implemented")
}
func (UnimplementedRingServiceServer) GetCode(context.Context, *GetCodeRequest) (*GetCodeResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetCode not implemented")
}
func (UnimplementedRingServiceServer) Sign(context.Context, *SignRequest) (*SignResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Sign not implemented")
}
func (UnimplementedRingServiceServer) SignTransaction(context.Context, *SignTransactionRequest) (*SignTransactionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SignTransaction not implemented")
}
func (UnimplementedRingServiceServer) SendTransaction(context.Context, *v1.EthTransaction) (*SendTransactionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SendTransaction not implemented")
}
func (UnimplementedRingServiceServer) SendRawTransaction(context.Context, *SendRawTransactionRequest) (*SendRawTransactionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SendRawTransaction not implemented")
}
func (UnimplementedRingServiceServer) Call(context.Context, *CallRequest) (*CallResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Call not implemented")
}
func (UnimplementedRingServiceServer) NewFilter(context.Context, *NewFilterRequest) (*NewFilterResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method NewFilter not implemented")
}
func (UnimplementedRingServiceServer) NewBlockFilter(context.Context, *emptypb.Empty) (*NewBlockFilterResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method NewBlockFilter not implemented")
}
func (UnimplementedRingServiceServer) PendingTransactionFilter(context.Context, *emptypb.Empty) (*PendingTransactionFilterResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method PendingTransactionFilter not implemented")
}
func (UnimplementedRingServiceServer) UninstallFilter(context.Context, *UninstallFilterRequest) (*UninstallFilterResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UninstallFilter not implemented")
}
func (UnimplementedRingServiceServer) FilterChanges(context.Context, *FilterChangesRequest) (*FilterChangesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method FilterChanges not implemented")
}
func (UnimplementedRingServiceServer) FilterLogs(context.Context, *FilterLogsRequest) (*FilterLogsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method FilterLogs not implemented")
}
func (UnimplementedRingServiceServer) Logs(context.Context, *LogsRequest) (*LogsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Logs not implemented")
}
func (UnimplementedRingServiceServer) mustEmbedUnimplementedRingServiceServer() {}

// UnsafeRingServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to RingServiceServer will
// result in compilation errors.
type UnsafeRingServiceServer interface {
	mustEmbedUnimplementedRingServiceServer()
}

func RegisterRingServiceServer(s grpc.ServiceRegistrar, srv RingServiceServer) {
	s.RegisterService(&RingService_ServiceDesc, srv)
}

func _RingService_Sha3_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Sha3Request)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Sha3(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Sha3",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Sha3(ctx, req.(*Sha3Request))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_NodeVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).NodeVersion(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/NodeVersion",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).NodeVersion(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_NetVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).NetVersion(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/NetVersion",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).NetVersion(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_NetPeerCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).NetPeerCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/NetPeerCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).NetPeerCount(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_ProtocolVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).ProtocolVersion(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/ProtocolVersion",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).ProtocolVersion(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Syncing_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Syncing(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Syncing",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Syncing(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Coinbase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Coinbase(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Coinbase",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Coinbase(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Mining_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Mining(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Mining",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Mining(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_HashRate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).HashRate(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/HashRate",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).HashRate(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Accounts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Accounts(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Accounts",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Accounts(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_GasPrice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).GasPrice(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/GasPrice",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).GasPrice(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_BlockNumber_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).BlockNumber(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/BlockNumber",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).BlockNumber(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_BlockByHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BlockByHashRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).BlockByHash(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/BlockByHash",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).BlockByHash(ctx, req.(*BlockByHashRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_BlockByNumber_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BlockByNumberRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).BlockByNumber(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/BlockByNumber",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).BlockByNumber(ctx, req.(*BlockByNumberRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_BlockTransactionCountByHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BlockTransactionCountByHashRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).BlockTransactionCountByHash(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/BlockTransactionCountByHash",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).BlockTransactionCountByHash(ctx, req.(*BlockTransactionCountByHashRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_BlockTransactionCountByNumber_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BlockTransactionCountByNumberRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).BlockTransactionCountByNumber(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/BlockTransactionCountByNumber",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).BlockTransactionCountByNumber(ctx, req.(*BlockTransactionCountByNumberRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_UncleCountByHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UncleCountByHashRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).UncleCountByHash(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/UncleCountByHash",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).UncleCountByHash(ctx, req.(*UncleCountByHashRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_UncleCountByNumber_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UncleCountByNumberRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).UncleCountByNumber(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/UncleCountByNumber",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).UncleCountByNumber(ctx, req.(*UncleCountByNumberRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_UncleByBlockHashAndIndex_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UncleByBlockHashAndIndexRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).UncleByBlockHashAndIndex(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/UncleByBlockHashAndIndex",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).UncleByBlockHashAndIndex(ctx, req.(*UncleByBlockHashAndIndexRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_UncleByBlockNumberAndIndex_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UncleByBlockNumberAndIndexRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).UncleByBlockNumberAndIndex(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/UncleByBlockNumberAndIndex",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).UncleByBlockNumberAndIndex(ctx, req.(*UncleByBlockNumberAndIndexRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Compilers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CompilersRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Compilers(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Compilers",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Compilers(ctx, req.(*CompilersRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_CompileSolidity_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CompileSolidityRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).CompileSolidity(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/CompileSolidity",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).CompileSolidity(ctx, req.(*CompileSolidityRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_CompileLLL_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CompileLLLRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).CompileLLL(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/CompileLLL",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).CompileLLL(ctx, req.(*CompileLLLRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_CompileSerpent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CompileSerpentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).CompileSerpent(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/CompileSerpent",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).CompileSerpent(ctx, req.(*CompileSerpentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_EstimateGas_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(EstimateGasRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).EstimateGas(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/EstimateGas",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).EstimateGas(ctx, req.(*EstimateGasRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_TransactionByHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(TransactionByHashRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).TransactionByHash(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/TransactionByHash",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).TransactionByHash(ctx, req.(*TransactionByHashRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_TransactionByBlockHashAndIndex_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(TransactionByBlockHashAndIndexRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).TransactionByBlockHashAndIndex(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/TransactionByBlockHashAndIndex",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).TransactionByBlockHashAndIndex(ctx, req.(*TransactionByBlockHashAndIndexRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_TransactionByBlockNumberAndIndex_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(TransactionByBlockNumberAndIndexRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).TransactionByBlockNumberAndIndex(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/TransactionByBlockNumberAndIndex",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).TransactionByBlockNumberAndIndex(ctx, req.(*TransactionByBlockNumberAndIndexRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_TransactionReceipt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(TransactionReceiptRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).TransactionReceipt(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/TransactionReceipt",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).TransactionReceipt(ctx, req.(*TransactionReceiptRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Balance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BalanceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Balance(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Balance",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Balance(ctx, req.(*BalanceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Storage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(StorageRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Storage(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Storage",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Storage(ctx, req.(*StorageRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Nonce_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(NonceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Nonce(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Nonce",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Nonce(ctx, req.(*NonceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_RepeatedNonce_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RepeatedNonceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).RepeatedNonce(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/RepeatedNonce",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).RepeatedNonce(ctx, req.(*RepeatedNonceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_TransactionCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(TransactionCountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).TransactionCount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/TransactionCount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).TransactionCount(ctx, req.(*TransactionCountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_GetCode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetCodeRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).GetCode(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/GetCode",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).GetCode(ctx, req.(*GetCodeRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Sign_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SignRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Sign(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Sign",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Sign(ctx, req.(*SignRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_SignTransaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SignTransactionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).SignTransaction(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/SignTransaction",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).SignTransaction(ctx, req.(*SignTransactionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_SendTransaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(v1.EthTransaction)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).SendTransaction(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/SendTransaction",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).SendTransaction(ctx, req.(*v1.EthTransaction))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_SendRawTransaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SendRawTransactionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).SendRawTransaction(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/SendRawTransaction",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).SendRawTransaction(ctx, req.(*SendRawTransactionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Call_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CallRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Call(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Call",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Call(ctx, req.(*CallRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_NewFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(NewFilterRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).NewFilter(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/NewFilter",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).NewFilter(ctx, req.(*NewFilterRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_NewBlockFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).NewBlockFilter(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/NewBlockFilter",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).NewBlockFilter(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_PendingTransactionFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(emptypb.Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).PendingTransactionFilter(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/PendingTransactionFilter",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).PendingTransactionFilter(ctx, req.(*emptypb.Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_UninstallFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UninstallFilterRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).UninstallFilter(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/UninstallFilter",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).UninstallFilter(ctx, req.(*UninstallFilterRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_FilterChanges_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(FilterChangesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).FilterChanges(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/FilterChanges",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).FilterChanges(ctx, req.(*FilterChangesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_FilterLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(FilterLogsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).FilterLogs(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/FilterLogs",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).FilterLogs(ctx, req.(*FilterLogsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RingService_Logs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(LogsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RingServiceServer).Logs(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/ring.v1.RingService/Logs",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RingServiceServer).Logs(ctx, req.(*LogsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

// RingService_ServiceDesc is the grpc.ServiceDesc for RingService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var RingService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "ring.v1.RingService",
	HandlerType: (*RingServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Sha3",
			Handler:    _RingService_Sha3_Handler,
		},
		{
			MethodName: "NodeVersion",
			Handler:    _RingService_NodeVersion_Handler,
		},
		{
			MethodName: "NetVersion",
			Handler:    _RingService_NetVersion_Handler,
		},
		{
			MethodName: "NetPeerCount",
			Handler:    _RingService_NetPeerCount_Handler,
		},
		{
			MethodName: "ProtocolVersion",
			Handler:    _RingService_ProtocolVersion_Handler,
		},
		{
			MethodName: "Syncing",
			Handler:    _RingService_Syncing_Handler,
		},
		{
			MethodName: "Coinbase",
			Handler:    _RingService_Coinbase_Handler,
		},
		{
			MethodName: "Mining",
			Handler:    _RingService_Mining_Handler,
		},
		{
			MethodName: "HashRate",
			Handler:    _RingService_HashRate_Handler,
		},
		{
			MethodName: "Accounts",
			Handler:    _RingService_Accounts_Handler,
		},
		{
			MethodName: "GasPrice",
			Handler:    _RingService_GasPrice_Handler,
		},
		{
			MethodName: "BlockNumber",
			Handler:    _RingService_BlockNumber_Handler,
		},
		{
			MethodName: "BlockByHash",
			Handler:    _RingService_BlockByHash_Handler,
		},
		{
			MethodName: "BlockByNumber",
			Handler:    _RingService_BlockByNumber_Handler,
		},
		{
			MethodName: "BlockTransactionCountByHash",
			Handler:    _RingService_BlockTransactionCountByHash_Handler,
		},
		{
			MethodName: "BlockTransactionCountByNumber",
			Handler:    _RingService_BlockTransactionCountByNumber_Handler,
		},
		{
			MethodName: "UncleCountByHash",
			Handler:    _RingService_UncleCountByHash_Handler,
		},
		{
			MethodName: "UncleCountByNumber",
			Handler:    _RingService_UncleCountByNumber_Handler,
		},
		{
			MethodName: "UncleByBlockHashAndIndex",
			Handler:    _RingService_UncleByBlockHashAndIndex_Handler,
		},
		{
			MethodName: "UncleByBlockNumberAndIndex",
			Handler:    _RingService_UncleByBlockNumberAndIndex_Handler,
		},
		{
			MethodName: "Compilers",
			Handler:    _RingService_Compilers_Handler,
		},
		{
			MethodName: "CompileSolidity",
			Handler:    _RingService_CompileSolidity_Handler,
		},
		{
			MethodName: "CompileLLL",
			Handler:    _RingService_CompileLLL_Handler,
		},
		{
			MethodName: "CompileSerpent",
			Handler:    _RingService_CompileSerpent_Handler,
		},
		{
			MethodName: "EstimateGas",
			Handler:    _RingService_EstimateGas_Handler,
		},
		{
			MethodName: "TransactionByHash",
			Handler:    _RingService_TransactionByHash_Handler,
		},
		{
			MethodName: "TransactionByBlockHashAndIndex",
			Handler:    _RingService_TransactionByBlockHashAndIndex_Handler,
		},
		{
			MethodName: "TransactionByBlockNumberAndIndex",
			Handler:    _RingService_TransactionByBlockNumberAndIndex_Handler,
		},
		{
			MethodName: "TransactionReceipt",
			Handler:    _RingService_TransactionReceipt_Handler,
		},
		{
			MethodName: "Balance",
			Handler:    _RingService_Balance_Handler,
		},
		{
			MethodName: "Storage",
			Handler:    _RingService_Storage_Handler,
		},
		{
			MethodName: "Nonce",
			Handler:    _RingService_Nonce_Handler,
		},
		{
			MethodName: "RepeatedNonce",
			Handler:    _RingService_RepeatedNonce_Handler,
		},
		{
			MethodName: "TransactionCount",
			Handler:    _RingService_TransactionCount_Handler,
		},
		{
			MethodName: "GetCode",
			Handler:    _RingService_GetCode_Handler,
		},
		{
			MethodName: "Sign",
			Handler:    _RingService_Sign_Handler,
		},
		{
			MethodName: "SignTransaction",
			Handler:    _RingService_SignTransaction_Handler,
		},
		{
			MethodName: "SendTransaction",
			Handler:    _RingService_SendTransaction_Handler,
		},
		{
			MethodName: "SendRawTransaction",
			Handler:    _RingService_SendRawTransaction_Handler,
		},
		{
			MethodName: "Call",
			Handler:    _RingService_Call_Handler,
		},
		{
			MethodName: "NewFilter",
			Handler:    _RingService_NewFilter_Handler,
		},
		{
			MethodName: "NewBlockFilter",
			Handler:    _RingService_NewBlockFilter_Handler,
		},
		{
			MethodName: "PendingTransactionFilter",
			Handler:    _RingService_PendingTransactionFilter_Handler,
		},
		{
			MethodName: "UninstallFilter",
			Handler:    _RingService_UninstallFilter_Handler,
		},
		{
			MethodName: "FilterChanges",
			Handler:    _RingService_FilterChanges_Handler,
		},
		{
			MethodName: "FilterLogs",
			Handler:    _RingService_FilterLogs_Handler,
		},
		{
			MethodName: "Logs",
			Handler:    _RingService_Logs_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "ring/v1/service.proto",
}
