// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.1 // protoc v3.17.3 // source: consensus_engine/consensus.proto package consensus import ( types "github.com/ledgerwatch/erigon-lib/gointerfaces/types" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" emptypb "google.golang.org/protobuf/types/known/emptypb" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type ChainSpecMessage struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Mechanism string `protobuf:"bytes,1,opt,name=mechanism,proto3" json:"mechanism,omitempty"` // Name of consensus mechanism, e.g. ethash, clique, aura MechanismConfig []byte `protobuf:"bytes,2,opt,name=mechanism_config,json=mechanismConfig,proto3" json:"mechanism_config,omitempty"` // Configuration of specific consensus mechanism - format is specific to the mechanism Genesis *Genesis `protobuf:"bytes,3,opt,name=genesis,proto3" json:"genesis,omitempty"` // Description of genesis block Forks []*Fork `protobuf:"bytes,4,rep,name=forks,proto3" json:"forks,omitempty"` // Description of forks (upgrades) } func (x *ChainSpecMessage) Reset() { *x = ChainSpecMessage{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChainSpecMessage) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChainSpecMessage) ProtoMessage() {} func (x *ChainSpecMessage) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChainSpecMessage.ProtoReflect.Descriptor instead. func (*ChainSpecMessage) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{0} } func (x *ChainSpecMessage) GetMechanism() string { if x != nil { return x.Mechanism } return "" } func (x *ChainSpecMessage) GetMechanismConfig() []byte { if x != nil { return x.MechanismConfig } return nil } func (x *ChainSpecMessage) GetGenesis() *Genesis { if x != nil { return x.Genesis } return nil } func (x *ChainSpecMessage) GetForks() []*Fork { if x != nil { return x.Forks } return nil } type Genesis struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ChainId *types.H256 `protobuf:"bytes,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Chain id starting from genesis block and until the first fork Template *Template `protobuf:"bytes,2,opt,name=template,proto3" json:"template,omitempty"` // Genesis header without values like "uncle hash", "tx hash" and "state root" calculated } func (x *Genesis) Reset() { *x = Genesis{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Genesis) String() string { return protoimpl.X.MessageStringOf(x) } func (*Genesis) ProtoMessage() {} func (x *Genesis) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Genesis.ProtoReflect.Descriptor instead. func (*Genesis) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{1} } func (x *Genesis) GetChainId() *types.H256 { if x != nil { return x.ChainId } return nil } func (x *Genesis) GetTemplate() *Template { if x != nil { return x.Template } return nil } type Fork struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Code name of the fork Number uint64 `protobuf:"varint,2,opt,name=number,proto3" json:"number,omitempty"` // First block number at which rules of the fork activate ChainId *types.H256 `protobuf:"bytes,3,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"` // Chain id starting from this fork until the next fork } func (x *Fork) Reset() { *x = Fork{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Fork) String() string { return protoimpl.X.MessageStringOf(x) } func (*Fork) ProtoMessage() {} func (x *Fork) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Fork.ProtoReflect.Descriptor instead. func (*Fork) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{2} } func (x *Fork) GetName() string { if x != nil { return x.Name } return "" } func (x *Fork) GetNumber() uint64 { if x != nil { return x.Number } return 0 } func (x *Fork) GetChainId() *types.H256 { if x != nil { return x.ChainId } return nil } type Error struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` } func (x *Error) Reset() { *x = Error{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Error) String() string { return protoimpl.X.MessageStringOf(x) } func (*Error) ProtoMessage() {} func (x *Error) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Error.ProtoReflect.Descriptor instead. func (*Error) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{3} } func (x *Error) GetCode() uint32 { if x != nil { return x.Code } return 0 } func (x *Error) GetDescription() string { if x != nil { return x.Description } return "" } type Result struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"` Error *Error `protobuf:"bytes,2,opt,name=error,proto3,oneof" json:"error,omitempty"` } func (x *Result) Reset() { *x = Result{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Result) String() string { return protoimpl.X.MessageStringOf(x) } func (*Result) ProtoMessage() {} func (x *Result) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Result.ProtoReflect.Descriptor instead. func (*Result) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{4} } func (x *Result) GetOk() bool { if x != nil { return x.Ok } return false } func (x *Result) GetError() *Error { if x != nil { return x.Error } return nil } type Template struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ParentHash *types.H256 `protobuf:"bytes,1,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"` Coinbase *types.H160 `protobuf:"bytes,2,opt,name=coinbase,proto3" json:"coinbase,omitempty"` Difficulty *types.H256 `protobuf:"bytes,3,opt,name=difficulty,proto3" json:"difficulty,omitempty"` Number uint64 `protobuf:"varint,4,opt,name=number,proto3" json:"number,omitempty"` GasLimit uint64 `protobuf:"varint,5,opt,name=gas_limit,json=gasLimit,proto3" json:"gas_limit,omitempty"` Time uint64 `protobuf:"varint,6,opt,name=time,proto3" json:"time,omitempty"` Extra []byte `protobuf:"bytes,7,opt,name=extra,proto3" json:"extra,omitempty"` Nonce uint64 `protobuf:"varint,8,opt,name=nonce,proto3" json:"nonce,omitempty"` } func (x *Template) Reset() { *x = Template{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Template) String() string { return protoimpl.X.MessageStringOf(x) } func (*Template) ProtoMessage() {} func (x *Template) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Template.ProtoReflect.Descriptor instead. func (*Template) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{5} } func (x *Template) GetParentHash() *types.H256 { if x != nil { return x.ParentHash } return nil } func (x *Template) GetCoinbase() *types.H160 { if x != nil { return x.Coinbase } return nil } func (x *Template) GetDifficulty() *types.H256 { if x != nil { return x.Difficulty } return nil } func (x *Template) GetNumber() uint64 { if x != nil { return x.Number } return 0 } func (x *Template) GetGasLimit() uint64 { if x != nil { return x.GasLimit } return 0 } func (x *Template) GetTime() uint64 { if x != nil { return x.Time } return 0 } func (x *Template) GetExtra() []byte { if x != nil { return x.Extra } return nil } func (x *Template) GetNonce() uint64 { if x != nil { return x.Nonce } return 0 } type BlockHeader struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Template *Template `protobuf:"bytes,1,opt,name=template,proto3" json:"template,omitempty"` UncleHash *types.H256 `protobuf:"bytes,2,opt,name=uncle_hash,json=uncleHash,proto3" json:"uncle_hash,omitempty"` RootHash *types.H256 `protobuf:"bytes,3,opt,name=root_hash,json=rootHash,proto3" json:"root_hash,omitempty"` TxHash *types.H256 `protobuf:"bytes,4,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` ReceiptHash *types.H256 `protobuf:"bytes,5,opt,name=receipt_hash,json=receiptHash,proto3" json:"receipt_hash,omitempty"` Bloom []byte `protobuf:"bytes,6,opt,name=bloom,proto3" json:"bloom,omitempty"` GasUsed uint64 `protobuf:"varint,7,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"` MixDigest *types.H256 `protobuf:"bytes,8,opt,name=mix_digest,json=mixDigest,proto3" json:"mix_digest,omitempty"` } func (x *BlockHeader) Reset() { *x = BlockHeader{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BlockHeader) String() string { return protoimpl.X.MessageStringOf(x) } func (*BlockHeader) ProtoMessage() {} func (x *BlockHeader) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use BlockHeader.ProtoReflect.Descriptor instead. func (*BlockHeader) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{6} } func (x *BlockHeader) GetTemplate() *Template { if x != nil { return x.Template } return nil } func (x *BlockHeader) GetUncleHash() *types.H256 { if x != nil { return x.UncleHash } return nil } func (x *BlockHeader) GetRootHash() *types.H256 { if x != nil { return x.RootHash } return nil } func (x *BlockHeader) GetTxHash() *types.H256 { if x != nil { return x.TxHash } return nil } func (x *BlockHeader) GetReceiptHash() *types.H256 { if x != nil { return x.ReceiptHash } return nil } func (x *BlockHeader) GetBloom() []byte { if x != nil { return x.Bloom } return nil } func (x *BlockHeader) GetGasUsed() uint64 { if x != nil { return x.GasUsed } return 0 } func (x *BlockHeader) GetMixDigest() *types.H256 { if x != nil { return x.MixDigest } return nil } type Transaction struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *Transaction) Reset() { *x = Transaction{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Transaction) String() string { return protoimpl.X.MessageStringOf(x) } func (*Transaction) ProtoMessage() {} func (x *Transaction) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Transaction.ProtoReflect.Descriptor instead. func (*Transaction) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{7} } type Block struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Header *BlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` Uncles []*BlockHeader `protobuf:"bytes,2,rep,name=uncles,proto3" json:"uncles,omitempty"` Transactions []*Transaction `protobuf:"bytes,3,rep,name=transactions,proto3" json:"transactions,omitempty"` TotalDifficulty []byte `protobuf:"bytes,4,opt,name=total_difficulty,json=totalDifficulty,proto3" json:"total_difficulty,omitempty"` } func (x *Block) Reset() { *x = Block{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Block) String() string { return protoimpl.X.MessageStringOf(x) } func (*Block) ProtoMessage() {} func (x *Block) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Block.ProtoReflect.Descriptor instead. func (*Block) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{8} } func (x *Block) GetHeader() *BlockHeader { if x != nil { return x.Header } return nil } func (x *Block) GetUncles() []*BlockHeader { if x != nil { return x.Uncles } return nil } func (x *Block) GetTransactions() []*Transaction { if x != nil { return x.Transactions } return nil } func (x *Block) GetTotalDifficulty() []byte { if x != nil { return x.TotalDifficulty } return nil } type GetAuthorRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Header *BlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` } func (x *GetAuthorRequest) Reset() { *x = GetAuthorRequest{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAuthorRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAuthorRequest) ProtoMessage() {} func (x *GetAuthorRequest) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetAuthorRequest.ProtoReflect.Descriptor instead. func (*GetAuthorRequest) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{9} } func (x *GetAuthorRequest) GetHeader() *BlockHeader { if x != nil { return x.Header } return nil } type GetAuthorResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Result *Result `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` Address *types.H160 `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` } func (x *GetAuthorResponse) Reset() { *x = GetAuthorResponse{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAuthorResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAuthorResponse) ProtoMessage() {} func (x *GetAuthorResponse) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetAuthorResponse.ProtoReflect.Descriptor instead. func (*GetAuthorResponse) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{10} } func (x *GetAuthorResponse) GetResult() *Result { if x != nil { return x.Result } return nil } func (x *GetAuthorResponse) GetAddress() *types.H160 { if x != nil { return x.Address } return nil } type VerifyHeaderRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Header *BlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` Seal bool `protobuf:"varint,2,opt,name=seal,proto3" json:"seal,omitempty"` } func (x *VerifyHeaderRequest) Reset() { *x = VerifyHeaderRequest{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *VerifyHeaderRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*VerifyHeaderRequest) ProtoMessage() {} func (x *VerifyHeaderRequest) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use VerifyHeaderRequest.ProtoReflect.Descriptor instead. func (*VerifyHeaderRequest) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{11} } func (x *VerifyHeaderRequest) GetHeader() *BlockHeader { if x != nil { return x.Header } return nil } func (x *VerifyHeaderRequest) GetSeal() bool { if x != nil { return x.Seal } return false } type VerifyHeaderResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hash *types.H256 `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` Result *Result `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"` FinaliseCode []byte `protobuf:"bytes,3,opt,name=finaliseCode,proto3" json:"finaliseCode,omitempty"` // Code (in TEVM to execute at the end of the block to finalise it according to the consensus engine rules) } func (x *VerifyHeaderResponse) Reset() { *x = VerifyHeaderResponse{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *VerifyHeaderResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*VerifyHeaderResponse) ProtoMessage() {} func (x *VerifyHeaderResponse) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use VerifyHeaderResponse.ProtoReflect.Descriptor instead. func (*VerifyHeaderResponse) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{12} } func (x *VerifyHeaderResponse) GetHash() *types.H256 { if x != nil { return x.Hash } return nil } func (x *VerifyHeaderResponse) GetResult() *Result { if x != nil { return x.Result } return nil } func (x *VerifyHeaderResponse) GetFinaliseCode() []byte { if x != nil { return x.FinaliseCode } return nil } type HeadersRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Hash *types.H256 `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` // Hash of the highest header requested Amount uint32 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"` // Number of headers requested } func (x *HeadersRequest) Reset() { *x = HeadersRequest{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeadersRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeadersRequest) ProtoMessage() {} func (x *HeadersRequest) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use HeadersRequest.ProtoReflect.Descriptor instead. func (*HeadersRequest) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{13} } func (x *HeadersRequest) GetHash() *types.H256 { if x != nil { return x.Hash } return nil } func (x *HeadersRequest) GetAmount() uint32 { if x != nil { return x.Amount } return 0 } type HeadersResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Header *BlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` } func (x *HeadersResponse) Reset() { *x = HeadersResponse{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *HeadersResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*HeadersResponse) ProtoMessage() {} func (x *HeadersResponse) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use HeadersResponse.ProtoReflect.Descriptor instead. func (*HeadersResponse) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{14} } func (x *HeadersResponse) GetHeader() *BlockHeader { if x != nil { return x.Header } return nil } type VerifyUnclesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Block *Block `protobuf:"bytes,1,opt,name=block,proto3" json:"block,omitempty"` } func (x *VerifyUnclesRequest) Reset() { *x = VerifyUnclesRequest{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *VerifyUnclesRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*VerifyUnclesRequest) ProtoMessage() {} func (x *VerifyUnclesRequest) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use VerifyUnclesRequest.ProtoReflect.Descriptor instead. func (*VerifyUnclesRequest) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{15} } func (x *VerifyUnclesRequest) GetBlock() *Block { if x != nil { return x.Block } return nil } type VerifyUnclesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Result *Result `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` } func (x *VerifyUnclesResponse) Reset() { *x = VerifyUnclesResponse{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *VerifyUnclesResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*VerifyUnclesResponse) ProtoMessage() {} func (x *VerifyUnclesResponse) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use VerifyUnclesResponse.ProtoReflect.Descriptor instead. func (*VerifyUnclesResponse) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{16} } func (x *VerifyUnclesResponse) GetResult() *Result { if x != nil { return x.Result } return nil } type SealBlockRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Result *Result `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` Block *Block `protobuf:"bytes,2,opt,name=block,proto3" json:"block,omitempty"` } func (x *SealBlockRequest) Reset() { *x = SealBlockRequest{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SealBlockRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SealBlockRequest) ProtoMessage() {} func (x *SealBlockRequest) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SealBlockRequest.ProtoReflect.Descriptor instead. func (*SealBlockRequest) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{17} } func (x *SealBlockRequest) GetResult() *Result { if x != nil { return x.Result } return nil } func (x *SealBlockRequest) GetBlock() *Block { if x != nil { return x.Block } return nil } type SealBlockResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Result *Result `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` Block *Block `protobuf:"bytes,2,opt,name=block,proto3" json:"block,omitempty"` } func (x *SealBlockResponse) Reset() { *x = SealBlockResponse{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SealBlockResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SealBlockResponse) ProtoMessage() {} func (x *SealBlockResponse) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SealBlockResponse.ProtoReflect.Descriptor instead. func (*SealBlockResponse) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{18} } func (x *SealBlockResponse) GetResult() *Result { if x != nil { return x.Result } return nil } func (x *SealBlockResponse) GetBlock() *Block { if x != nil { return x.Block } return nil } type PrepareRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Header *BlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` } func (x *PrepareRequest) Reset() { *x = PrepareRequest{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PrepareRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PrepareRequest) ProtoMessage() {} func (x *PrepareRequest) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PrepareRequest.ProtoReflect.Descriptor instead. func (*PrepareRequest) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{19} } func (x *PrepareRequest) GetHeader() *BlockHeader { if x != nil { return x.Header } return nil } type PrepareResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Result *Result `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` } func (x *PrepareResponse) Reset() { *x = PrepareResponse{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PrepareResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PrepareResponse) ProtoMessage() {} func (x *PrepareResponse) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PrepareResponse.ProtoReflect.Descriptor instead. func (*PrepareResponse) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{20} } func (x *PrepareResponse) GetResult() *Result { if x != nil { return x.Result } return nil } type FinalizeRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Header *BlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` Uncles []*BlockHeader `protobuf:"bytes,2,rep,name=uncles,proto3" json:"uncles,omitempty"` } func (x *FinalizeRequest) Reset() { *x = FinalizeRequest{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FinalizeRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FinalizeRequest) ProtoMessage() {} func (x *FinalizeRequest) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FinalizeRequest.ProtoReflect.Descriptor instead. func (*FinalizeRequest) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{21} } func (x *FinalizeRequest) GetHeader() *BlockHeader { if x != nil { return x.Header } return nil } func (x *FinalizeRequest) GetUncles() []*BlockHeader { if x != nil { return x.Uncles } return nil } type FinalizeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Result *Result `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` MinerReward *types.H256 `protobuf:"bytes,2,opt,name=miner_reward,json=minerReward,proto3" json:"miner_reward,omitempty"` UncleRewards []*types.H256 `protobuf:"bytes,3,rep,name=uncle_rewards,json=uncleRewards,proto3" json:"uncle_rewards,omitempty"` } func (x *FinalizeResponse) Reset() { *x = FinalizeResponse{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FinalizeResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FinalizeResponse) ProtoMessage() {} func (x *FinalizeResponse) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FinalizeResponse.ProtoReflect.Descriptor instead. func (*FinalizeResponse) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{22} } func (x *FinalizeResponse) GetResult() *Result { if x != nil { return x.Result } return nil } func (x *FinalizeResponse) GetMinerReward() *types.H256 { if x != nil { return x.MinerReward } return nil } func (x *FinalizeResponse) GetUncleRewards() []*types.H256 { if x != nil { return x.UncleRewards } return nil } type StartTestCaseMessage struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Mechanism string `protobuf:"bytes,1,opt,name=mechanism,proto3" json:"mechanism,omitempty"` // Consensus mechanism used in the test case Config []byte `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"` // Configuration specific to the consensus engine tested } func (x *StartTestCaseMessage) Reset() { *x = StartTestCaseMessage{} if protoimpl.UnsafeEnabled { mi := &file_consensus_engine_consensus_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StartTestCaseMessage) String() string { return protoimpl.X.MessageStringOf(x) } func (*StartTestCaseMessage) ProtoMessage() {} func (x *StartTestCaseMessage) ProtoReflect() protoreflect.Message { mi := &file_consensus_engine_consensus_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StartTestCaseMessage.ProtoReflect.Descriptor instead. func (*StartTestCaseMessage) Descriptor() ([]byte, []int) { return file_consensus_engine_consensus_proto_rawDescGZIP(), []int{23} } func (x *StartTestCaseMessage) GetMechanism() string { if x != nil { return x.Mechanism } return "" } func (x *StartTestCaseMessage) GetConfig() []byte { if x != nil { return x.Config } return nil } var File_consensus_engine_consensus_proto protoreflect.FileDescriptor var file_consensus_engine_consensus_proto_rawDesc = []byte{ 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb0, 0x01, 0x0a, 0x10, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2c, 0x0a, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x52, 0x07, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x12, 0x25, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x46, 0x6f, 0x72, 0x6b, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x6b, 0x73, 0x22, 0x62, 0x0a, 0x07, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x12, 0x26, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x5a, 0x0a, 0x04, 0x46, 0x6f, 0x72, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4f, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x12, 0x2b, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x83, 0x02, 0x0a, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x27, 0x0a, 0x08, 0x63, 0x6f, 0x69, 0x6e, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x31, 0x36, 0x30, 0x52, 0x08, 0x63, 0x6f, 0x69, 0x6e, 0x62, 0x61, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x67, 0x61, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0xc7, 0x02, 0x0a, 0x0b, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x0a, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x28, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x24, 0x0a, 0x07, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x2e, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x70, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x70, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x6f, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x6f, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x61, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x61, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x0a, 0x6d, 0x69, 0x78, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x09, 0x6d, 0x69, 0x78, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x22, 0x0d, 0x0a, 0x0b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xce, 0x01, 0x0a, 0x05, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x22, 0x42, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x22, 0x65, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x31, 0x36, 0x30, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x59, 0x0a, 0x13, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x65, 0x61, 0x6c, 0x22, 0x86, 0x01, 0x0a, 0x14, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x29, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x49, 0x0a, 0x0e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x41, 0x0a, 0x0f, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x22, 0x3d, 0x0a, 0x13, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x41, 0x0a, 0x14, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x65, 0x0a, 0x10, 0x53, 0x65, 0x61, 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x26, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x66, 0x0a, 0x11, 0x53, 0x65, 0x61, 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x26, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x40, 0x0a, 0x0e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x22, 0x3c, 0x0a, 0x0f, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x71, 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x10, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2e, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x30, 0x0a, 0x0d, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x32, 0x35, 0x36, 0x52, 0x0c, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x22, 0x4c, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x65, 0x73, 0x74, 0x43, 0x61, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0xe7, 0x04, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x46, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x12, 0x1b, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x54, 0x0a, 0x0d, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x1e, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x30, 0x01, 0x12, 0x4b, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x19, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x28, 0x01, 0x30, 0x01, 0x12, 0x53, 0x0a, 0x0c, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x6e, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x30, 0x01, 0x12, 0x44, 0x0a, 0x07, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x30, 0x01, 0x12, 0x47, 0x0a, 0x08, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x30, 0x01, 0x12, 0x43, 0x0a, 0x04, 0x53, 0x65, 0x61, 0x6c, 0x12, 0x1b, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x53, 0x65, 0x61, 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x53, 0x65, 0x61, 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x32, 0x50, 0x0a, 0x04, 0x54, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x65, 0x73, 0x74, 0x43, 0x61, 0x73, 0x65, 0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x65, 0x73, 0x74, 0x43, 0x61, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x17, 0x5a, 0x15, 0x2e, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_consensus_engine_consensus_proto_rawDescOnce sync.Once file_consensus_engine_consensus_proto_rawDescData = file_consensus_engine_consensus_proto_rawDesc ) func file_consensus_engine_consensus_proto_rawDescGZIP() []byte { file_consensus_engine_consensus_proto_rawDescOnce.Do(func() { file_consensus_engine_consensus_proto_rawDescData = protoimpl.X.CompressGZIP(file_consensus_engine_consensus_proto_rawDescData) }) return file_consensus_engine_consensus_proto_rawDescData } var file_consensus_engine_consensus_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_consensus_engine_consensus_proto_goTypes = []interface{}{ (*ChainSpecMessage)(nil), // 0: consensus.ChainSpecMessage (*Genesis)(nil), // 1: consensus.Genesis (*Fork)(nil), // 2: consensus.Fork (*Error)(nil), // 3: consensus.Error (*Result)(nil), // 4: consensus.Result (*Template)(nil), // 5: consensus.Template (*BlockHeader)(nil), // 6: consensus.BlockHeader (*Transaction)(nil), // 7: consensus.Transaction (*Block)(nil), // 8: consensus.Block (*GetAuthorRequest)(nil), // 9: consensus.GetAuthorRequest (*GetAuthorResponse)(nil), // 10: consensus.GetAuthorResponse (*VerifyHeaderRequest)(nil), // 11: consensus.VerifyHeaderRequest (*VerifyHeaderResponse)(nil), // 12: consensus.VerifyHeaderResponse (*HeadersRequest)(nil), // 13: consensus.HeadersRequest (*HeadersResponse)(nil), // 14: consensus.HeadersResponse (*VerifyUnclesRequest)(nil), // 15: consensus.VerifyUnclesRequest (*VerifyUnclesResponse)(nil), // 16: consensus.VerifyUnclesResponse (*SealBlockRequest)(nil), // 17: consensus.SealBlockRequest (*SealBlockResponse)(nil), // 18: consensus.SealBlockResponse (*PrepareRequest)(nil), // 19: consensus.PrepareRequest (*PrepareResponse)(nil), // 20: consensus.PrepareResponse (*FinalizeRequest)(nil), // 21: consensus.FinalizeRequest (*FinalizeResponse)(nil), // 22: consensus.FinalizeResponse (*StartTestCaseMessage)(nil), // 23: consensus.StartTestCaseMessage (*types.H256)(nil), // 24: types.H256 (*types.H160)(nil), // 25: types.H160 (*emptypb.Empty)(nil), // 26: google.protobuf.Empty } var file_consensus_engine_consensus_proto_depIdxs = []int32{ 1, // 0: consensus.ChainSpecMessage.genesis:type_name -> consensus.Genesis 2, // 1: consensus.ChainSpecMessage.forks:type_name -> consensus.Fork 24, // 2: consensus.Genesis.chain_id:type_name -> types.H256 5, // 3: consensus.Genesis.template:type_name -> consensus.Template 24, // 4: consensus.Fork.chain_id:type_name -> types.H256 3, // 5: consensus.Result.error:type_name -> consensus.Error 24, // 6: consensus.Template.parent_hash:type_name -> types.H256 25, // 7: consensus.Template.coinbase:type_name -> types.H160 24, // 8: consensus.Template.difficulty:type_name -> types.H256 5, // 9: consensus.BlockHeader.template:type_name -> consensus.Template 24, // 10: consensus.BlockHeader.uncle_hash:type_name -> types.H256 24, // 11: consensus.BlockHeader.root_hash:type_name -> types.H256 24, // 12: consensus.BlockHeader.tx_hash:type_name -> types.H256 24, // 13: consensus.BlockHeader.receipt_hash:type_name -> types.H256 24, // 14: consensus.BlockHeader.mix_digest:type_name -> types.H256 6, // 15: consensus.Block.header:type_name -> consensus.BlockHeader 6, // 16: consensus.Block.uncles:type_name -> consensus.BlockHeader 7, // 17: consensus.Block.transactions:type_name -> consensus.Transaction 6, // 18: consensus.GetAuthorRequest.header:type_name -> consensus.BlockHeader 4, // 19: consensus.GetAuthorResponse.result:type_name -> consensus.Result 25, // 20: consensus.GetAuthorResponse.address:type_name -> types.H160 6, // 21: consensus.VerifyHeaderRequest.header:type_name -> consensus.BlockHeader 24, // 22: consensus.VerifyHeaderResponse.hash:type_name -> types.H256 4, // 23: consensus.VerifyHeaderResponse.result:type_name -> consensus.Result 24, // 24: consensus.HeadersRequest.hash:type_name -> types.H256 6, // 25: consensus.HeadersResponse.header:type_name -> consensus.BlockHeader 8, // 26: consensus.VerifyUnclesRequest.block:type_name -> consensus.Block 4, // 27: consensus.VerifyUnclesResponse.result:type_name -> consensus.Result 4, // 28: consensus.SealBlockRequest.result:type_name -> consensus.Result 8, // 29: consensus.SealBlockRequest.block:type_name -> consensus.Block 4, // 30: consensus.SealBlockResponse.result:type_name -> consensus.Result 8, // 31: consensus.SealBlockResponse.block:type_name -> consensus.Block 6, // 32: consensus.PrepareRequest.header:type_name -> consensus.BlockHeader 4, // 33: consensus.PrepareResponse.result:type_name -> consensus.Result 6, // 34: consensus.FinalizeRequest.header:type_name -> consensus.BlockHeader 6, // 35: consensus.FinalizeRequest.uncles:type_name -> consensus.BlockHeader 4, // 36: consensus.FinalizeResponse.result:type_name -> consensus.Result 24, // 37: consensus.FinalizeResponse.miner_reward:type_name -> types.H256 24, // 38: consensus.FinalizeResponse.uncle_rewards:type_name -> types.H256 9, // 39: consensus.ConsensusEngine.GetAuthor:input_type -> consensus.GetAuthorRequest 26, // 40: consensus.ConsensusEngine.ChainSpec:input_type -> google.protobuf.Empty 11, // 41: consensus.ConsensusEngine.VerifyHeaders:input_type -> consensus.VerifyHeaderRequest 14, // 42: consensus.ConsensusEngine.ProvideHeaders:input_type -> consensus.HeadersResponse 15, // 43: consensus.ConsensusEngine.VerifyUncles:input_type -> consensus.VerifyUnclesRequest 19, // 44: consensus.ConsensusEngine.Prepare:input_type -> consensus.PrepareRequest 21, // 45: consensus.ConsensusEngine.Finalize:input_type -> consensus.FinalizeRequest 17, // 46: consensus.ConsensusEngine.Seal:input_type -> consensus.SealBlockRequest 23, // 47: consensus.Test.StartTestCase:input_type -> consensus.StartTestCaseMessage 10, // 48: consensus.ConsensusEngine.GetAuthor:output_type -> consensus.GetAuthorResponse 0, // 49: consensus.ConsensusEngine.ChainSpec:output_type -> consensus.ChainSpecMessage 12, // 50: consensus.ConsensusEngine.VerifyHeaders:output_type -> consensus.VerifyHeaderResponse 13, // 51: consensus.ConsensusEngine.ProvideHeaders:output_type -> consensus.HeadersRequest 16, // 52: consensus.ConsensusEngine.VerifyUncles:output_type -> consensus.VerifyUnclesResponse 20, // 53: consensus.ConsensusEngine.Prepare:output_type -> consensus.PrepareResponse 22, // 54: consensus.ConsensusEngine.Finalize:output_type -> consensus.FinalizeResponse 18, // 55: consensus.ConsensusEngine.Seal:output_type -> consensus.SealBlockResponse 26, // 56: consensus.Test.StartTestCase:output_type -> google.protobuf.Empty 48, // [48:57] is the sub-list for method output_type 39, // [39:48] is the sub-list for method input_type 39, // [39:39] is the sub-list for extension type_name 39, // [39:39] is the sub-list for extension extendee 0, // [0:39] is the sub-list for field type_name } func init() { file_consensus_engine_consensus_proto_init() } func file_consensus_engine_consensus_proto_init() { if File_consensus_engine_consensus_proto != nil { return } if !protoimpl.UnsafeEnabled { file_consensus_engine_consensus_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChainSpecMessage); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Genesis); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Fork); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Error); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Result); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Template); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BlockHeader); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Transaction); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Block); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAuthorRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAuthorResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VerifyHeaderRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VerifyHeaderResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeadersRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HeadersResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VerifyUnclesRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VerifyUnclesResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SealBlockRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SealBlockResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PrepareRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PrepareResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FinalizeRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FinalizeResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_consensus_engine_consensus_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StartTestCaseMessage); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } file_consensus_engine_consensus_proto_msgTypes[4].OneofWrappers = []interface{}{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_consensus_engine_consensus_proto_rawDesc, NumEnums: 0, NumMessages: 24, NumExtensions: 0, NumServices: 2, }, GoTypes: file_consensus_engine_consensus_proto_goTypes, DependencyIndexes: file_consensus_engine_consensus_proto_depIdxs, MessageInfos: file_consensus_engine_consensus_proto_msgTypes, }.Build() File_consensus_engine_consensus_proto = out.File file_consensus_engine_consensus_proto_rawDesc = nil file_consensus_engine_consensus_proto_goTypes = nil file_consensus_engine_consensus_proto_depIdxs = nil }