Svarog 281944762d
[NOD-1500] Glue between domain and application (#1007)
* [NOD-1500] Added Domain type and Constructor

* [NOD-1500] Replaced dag+txpool with domain in flowContext

* [NOD-1500] Replaced dag+txpool with domain in flowContext

* [NOD-1500] Converters: domain objects from/to appmessage

* [NOD-1500] Convert hashes to DomainHashes in appmessages

* [NOD-1500] Remove references to daghash in dagconfig

* [NOD-1500] Fixed all appmessage usages of hashes

* [NOD-1500] Update all RPC to use domain

* [NOD-1500] Big chunk of protocol flows re-wired to domain

* [NOD-1500] Finished re-wiring all protocol flows to new Domain

* [NOD-1500] Fix some mempool and kaspaminer compilation errors

* [NOD-1500] Deleted util/{block,tx,daghash} and dbaccess

* [NOD-1500] util.CoinbaseTransactionIndex -> transactionhelper.CoinbaseTransactionIndex

* [NOD-1500] Fix txsigner

* [NOD-1500] Removed all references to util/subnetworkid

* [NOD-1500] Update RpcGetBlock related messages

* [NOD-1500] Many more compilation fixes

* [NOD-1500] Return full list of missing blocks for orphan resolution

* [NOD-1500] Fixed handshake

* [NOD-1500] Fixed flowcontext compilation

* [NOD-1500] Update users of StartIBDIfRequired to handle error

* [NOD-1500] Removed some more fields from RPC

* [NOD-1500] Fix the getBlockTemplate flow

* [NOD-1500] Fix HandleGetCurrentNetwork

* [NOD-1500] Remove redundant code

* [NOD-1500] Remove obsolete notifications

* [NOD-1500] Split MiningManager and Consensus to separate fields in Domain

* [NOD-1500] Update two wrong references to location of txscript

* [NOD-1500] Added comments

* [NOD-1500] Fix some tests

* [NOD-1500] Removed serialization logic from appmessage

* [NOD-1500] Rename database/serialization/messages.proto to dbobjects.proto

* [NOD-1500] Delete integration tests

* [NOD-1500] Remove txsort

* [NOD-1500] Fix tiny bug

* [NOD-1500] Remove rogue dependancy on bchd

* [NOD-1500] Some stylistic fixes
2020-11-08 11:55:54 +02:00

8577 lines
321 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.25.0
// protoc v3.12.3
// source: dbobjects.proto
package protowire
import (
reflect "reflect"
sync "sync"
proto "github.com/golang/protobuf/proto"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
)
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)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type KaspadMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Payload:
// *KaspadMessage_Addresses
// *KaspadMessage_Block
// *KaspadMessage_Transaction
// *KaspadMessage_RequestBlockLocator
// *KaspadMessage_BlockLocator
// *KaspadMessage_RequestAddresses
// *KaspadMessage_RequestIBDBlocks
// *KaspadMessage_RequestNextIBDBlocks
// *KaspadMessage_DoneIBDBlocks
// *KaspadMessage_RequestRelayBlocks
// *KaspadMessage_RequestSelectedTip
// *KaspadMessage_RequestTransactions
// *KaspadMessage_IbdBlock
// *KaspadMessage_InvRelayBlock
// *KaspadMessage_InvTransactions
// *KaspadMessage_Ping
// *KaspadMessage_Pong
// *KaspadMessage_SelectedTip
// *KaspadMessage_Verack
// *KaspadMessage_Version
// *KaspadMessage_TransactionNotFound
// *KaspadMessage_Reject
// *KaspadMessage_GetCurrentNetworkRequest
// *KaspadMessage_GetCurrentNetworkResponse
// *KaspadMessage_SubmitBlockRequest
// *KaspadMessage_SubmitBlockResponse
// *KaspadMessage_GetBlockTemplateRequest
// *KaspadMessage_GetBlockTemplateResponse
// *KaspadMessage_NotifyBlockAddedRequest
// *KaspadMessage_NotifyBlockAddedResponse
// *KaspadMessage_BlockAddedNotification
// *KaspadMessage_GetPeerAddressesRequest
// *KaspadMessage_GetPeerAddressesResponse
// *KaspadMessage_GetSelectedTipHashRequest
// *KaspadMessage_GetSelectedTipHashResponse
// *KaspadMessage_GetMempoolEntryRequest
// *KaspadMessage_GetMempoolEntryResponse
// *KaspadMessage_GetConnectedPeerInfoRequest
// *KaspadMessage_GetConnectedPeerInfoResponse
// *KaspadMessage_AddPeerRequest
// *KaspadMessage_AddPeerResponse
// *KaspadMessage_SubmitTransactionRequest
// *KaspadMessage_SubmitTransactionResponse
// *KaspadMessage_NotifyChainChangedRequest
// *KaspadMessage_NotifyChainChangedResponse
// *KaspadMessage_ChainChangedNotification
// *KaspadMessage_GetBlockRequest
// *KaspadMessage_GetBlockResponse
// *KaspadMessage_GetSubnetworkRequest
// *KaspadMessage_GetSubnetworkResponse
// *KaspadMessage_GetChainFromBlockRequest
// *KaspadMessage_GetChainFromBlockResponse
// *KaspadMessage_GetBlocksRequest
// *KaspadMessage_GetBlocksResponse
// *KaspadMessage_GetBlockCountRequest
// *KaspadMessage_GetBlockCountResponse
// *KaspadMessage_GetBlockDagInfoRequest
// *KaspadMessage_GetBlockDagInfoResponse
// *KaspadMessage_ResolveFinalityConflictRequest
// *KaspadMessage_ResolveFinalityConflictResponse
// *KaspadMessage_NotifyFinalityConflictsRequest
// *KaspadMessage_NotifyFinalityConflictsResponse
// *KaspadMessage_FinalityConflictNotification
// *KaspadMessage_FinalityConflictResolvedNotification
// *KaspadMessage_GetMempoolEntriesRequest
// *KaspadMessage_GetMempoolEntriesResponse
// *KaspadMessage_ShutDownRequest
// *KaspadMessage_ShutDownResponse
// *KaspadMessage_GetHeadersRequest
// *KaspadMessage_GetHeadersResponse
Payload isKaspadMessage_Payload `protobuf_oneof:"payload"`
}
func (x *KaspadMessage) Reset() {
*x = KaspadMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *KaspadMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KaspadMessage) ProtoMessage() {}
func (x *KaspadMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 KaspadMessage.ProtoReflect.Descriptor instead.
func (*KaspadMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{0}
}
func (m *KaspadMessage) GetPayload() isKaspadMessage_Payload {
if m != nil {
return m.Payload
}
return nil
}
func (x *KaspadMessage) GetAddresses() *AddressesMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Addresses); ok {
return x.Addresses
}
return nil
}
func (x *KaspadMessage) GetBlock() *BlockMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Block); ok {
return x.Block
}
return nil
}
func (x *KaspadMessage) GetTransaction() *TransactionMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Transaction); ok {
return x.Transaction
}
return nil
}
func (x *KaspadMessage) GetRequestBlockLocator() *RequestBlockLocatorMessage {
if x, ok := x.GetPayload().(*KaspadMessage_RequestBlockLocator); ok {
return x.RequestBlockLocator
}
return nil
}
func (x *KaspadMessage) GetBlockLocator() *BlockLocatorMessage {
if x, ok := x.GetPayload().(*KaspadMessage_BlockLocator); ok {
return x.BlockLocator
}
return nil
}
func (x *KaspadMessage) GetRequestAddresses() *RequestAddressesMessage {
if x, ok := x.GetPayload().(*KaspadMessage_RequestAddresses); ok {
return x.RequestAddresses
}
return nil
}
func (x *KaspadMessage) GetRequestIBDBlocks() *RequestIBDBlocksMessage {
if x, ok := x.GetPayload().(*KaspadMessage_RequestIBDBlocks); ok {
return x.RequestIBDBlocks
}
return nil
}
func (x *KaspadMessage) GetRequestNextIBDBlocks() *RequestNextIBDBlocksMessage {
if x, ok := x.GetPayload().(*KaspadMessage_RequestNextIBDBlocks); ok {
return x.RequestNextIBDBlocks
}
return nil
}
func (x *KaspadMessage) GetDoneIBDBlocks() *DoneIBDBlocksMessage {
if x, ok := x.GetPayload().(*KaspadMessage_DoneIBDBlocks); ok {
return x.DoneIBDBlocks
}
return nil
}
func (x *KaspadMessage) GetRequestRelayBlocks() *RequestRelayBlocksMessage {
if x, ok := x.GetPayload().(*KaspadMessage_RequestRelayBlocks); ok {
return x.RequestRelayBlocks
}
return nil
}
func (x *KaspadMessage) GetRequestSelectedTip() *RequestSelectedTipMessage {
if x, ok := x.GetPayload().(*KaspadMessage_RequestSelectedTip); ok {
return x.RequestSelectedTip
}
return nil
}
func (x *KaspadMessage) GetRequestTransactions() *RequestTransactionsMessage {
if x, ok := x.GetPayload().(*KaspadMessage_RequestTransactions); ok {
return x.RequestTransactions
}
return nil
}
func (x *KaspadMessage) GetIbdBlock() *BlockMessage {
if x, ok := x.GetPayload().(*KaspadMessage_IbdBlock); ok {
return x.IbdBlock
}
return nil
}
func (x *KaspadMessage) GetInvRelayBlock() *InvRelayBlockMessage {
if x, ok := x.GetPayload().(*KaspadMessage_InvRelayBlock); ok {
return x.InvRelayBlock
}
return nil
}
func (x *KaspadMessage) GetInvTransactions() *InvTransactionsMessage {
if x, ok := x.GetPayload().(*KaspadMessage_InvTransactions); ok {
return x.InvTransactions
}
return nil
}
func (x *KaspadMessage) GetPing() *PingMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Ping); ok {
return x.Ping
}
return nil
}
func (x *KaspadMessage) GetPong() *PongMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Pong); ok {
return x.Pong
}
return nil
}
func (x *KaspadMessage) GetSelectedTip() *SelectedTipMessage {
if x, ok := x.GetPayload().(*KaspadMessage_SelectedTip); ok {
return x.SelectedTip
}
return nil
}
func (x *KaspadMessage) GetVerack() *VerackMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Verack); ok {
return x.Verack
}
return nil
}
func (x *KaspadMessage) GetVersion() *VersionMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Version); ok {
return x.Version
}
return nil
}
func (x *KaspadMessage) GetTransactionNotFound() *TransactionNotFoundMessage {
if x, ok := x.GetPayload().(*KaspadMessage_TransactionNotFound); ok {
return x.TransactionNotFound
}
return nil
}
func (x *KaspadMessage) GetReject() *RejectMessage {
if x, ok := x.GetPayload().(*KaspadMessage_Reject); ok {
return x.Reject
}
return nil
}
func (x *KaspadMessage) GetGetCurrentNetworkRequest() *GetCurrentNetworkRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetCurrentNetworkRequest); ok {
return x.GetCurrentNetworkRequest
}
return nil
}
func (x *KaspadMessage) GetGetCurrentNetworkResponse() *GetCurrentNetworkResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetCurrentNetworkResponse); ok {
return x.GetCurrentNetworkResponse
}
return nil
}
func (x *KaspadMessage) GetSubmitBlockRequest() *SubmitBlockRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_SubmitBlockRequest); ok {
return x.SubmitBlockRequest
}
return nil
}
func (x *KaspadMessage) GetSubmitBlockResponse() *SubmitBlockResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_SubmitBlockResponse); ok {
return x.SubmitBlockResponse
}
return nil
}
func (x *KaspadMessage) GetGetBlockTemplateRequest() *GetBlockTemplateRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockTemplateRequest); ok {
return x.GetBlockTemplateRequest
}
return nil
}
func (x *KaspadMessage) GetGetBlockTemplateResponse() *GetBlockTemplateResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockTemplateResponse); ok {
return x.GetBlockTemplateResponse
}
return nil
}
func (x *KaspadMessage) GetNotifyBlockAddedRequest() *NotifyBlockAddedRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_NotifyBlockAddedRequest); ok {
return x.NotifyBlockAddedRequest
}
return nil
}
func (x *KaspadMessage) GetNotifyBlockAddedResponse() *NotifyBlockAddedResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_NotifyBlockAddedResponse); ok {
return x.NotifyBlockAddedResponse
}
return nil
}
func (x *KaspadMessage) GetBlockAddedNotification() *BlockAddedNotificationMessage {
if x, ok := x.GetPayload().(*KaspadMessage_BlockAddedNotification); ok {
return x.BlockAddedNotification
}
return nil
}
func (x *KaspadMessage) GetGetPeerAddressesRequest() *GetPeerAddressesRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetPeerAddressesRequest); ok {
return x.GetPeerAddressesRequest
}
return nil
}
func (x *KaspadMessage) GetGetPeerAddressesResponse() *GetPeerAddressesResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetPeerAddressesResponse); ok {
return x.GetPeerAddressesResponse
}
return nil
}
func (x *KaspadMessage) GetGetSelectedTipHashRequest() *GetSelectedTipHashRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetSelectedTipHashRequest); ok {
return x.GetSelectedTipHashRequest
}
return nil
}
func (x *KaspadMessage) GetGetSelectedTipHashResponse() *GetSelectedTipHashResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetSelectedTipHashResponse); ok {
return x.GetSelectedTipHashResponse
}
return nil
}
func (x *KaspadMessage) GetGetMempoolEntryRequest() *GetMempoolEntryRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetMempoolEntryRequest); ok {
return x.GetMempoolEntryRequest
}
return nil
}
func (x *KaspadMessage) GetGetMempoolEntryResponse() *GetMempoolEntryResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetMempoolEntryResponse); ok {
return x.GetMempoolEntryResponse
}
return nil
}
func (x *KaspadMessage) GetGetConnectedPeerInfoRequest() *GetConnectedPeerInfoRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetConnectedPeerInfoRequest); ok {
return x.GetConnectedPeerInfoRequest
}
return nil
}
func (x *KaspadMessage) GetGetConnectedPeerInfoResponse() *GetConnectedPeerInfoResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetConnectedPeerInfoResponse); ok {
return x.GetConnectedPeerInfoResponse
}
return nil
}
func (x *KaspadMessage) GetAddPeerRequest() *AddPeerRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_AddPeerRequest); ok {
return x.AddPeerRequest
}
return nil
}
func (x *KaspadMessage) GetAddPeerResponse() *AddPeerResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_AddPeerResponse); ok {
return x.AddPeerResponse
}
return nil
}
func (x *KaspadMessage) GetSubmitTransactionRequest() *SubmitTransactionRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_SubmitTransactionRequest); ok {
return x.SubmitTransactionRequest
}
return nil
}
func (x *KaspadMessage) GetSubmitTransactionResponse() *SubmitTransactionResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_SubmitTransactionResponse); ok {
return x.SubmitTransactionResponse
}
return nil
}
func (x *KaspadMessage) GetNotifyChainChangedRequest() *NotifyChainChangedRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_NotifyChainChangedRequest); ok {
return x.NotifyChainChangedRequest
}
return nil
}
func (x *KaspadMessage) GetNotifyChainChangedResponse() *NotifyChainChangedResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_NotifyChainChangedResponse); ok {
return x.NotifyChainChangedResponse
}
return nil
}
func (x *KaspadMessage) GetChainChangedNotification() *ChainChangedNotificationMessage {
if x, ok := x.GetPayload().(*KaspadMessage_ChainChangedNotification); ok {
return x.ChainChangedNotification
}
return nil
}
func (x *KaspadMessage) GetGetBlockRequest() *GetBlockRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockRequest); ok {
return x.GetBlockRequest
}
return nil
}
func (x *KaspadMessage) GetGetBlockResponse() *GetBlockResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockResponse); ok {
return x.GetBlockResponse
}
return nil
}
func (x *KaspadMessage) GetGetSubnetworkRequest() *GetSubnetworkRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetSubnetworkRequest); ok {
return x.GetSubnetworkRequest
}
return nil
}
func (x *KaspadMessage) GetGetSubnetworkResponse() *GetSubnetworkResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetSubnetworkResponse); ok {
return x.GetSubnetworkResponse
}
return nil
}
func (x *KaspadMessage) GetGetChainFromBlockRequest() *GetChainFromBlockRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetChainFromBlockRequest); ok {
return x.GetChainFromBlockRequest
}
return nil
}
func (x *KaspadMessage) GetGetChainFromBlockResponse() *GetChainFromBlockResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetChainFromBlockResponse); ok {
return x.GetChainFromBlockResponse
}
return nil
}
func (x *KaspadMessage) GetGetBlocksRequest() *GetBlocksRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlocksRequest); ok {
return x.GetBlocksRequest
}
return nil
}
func (x *KaspadMessage) GetGetBlocksResponse() *GetBlocksResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlocksResponse); ok {
return x.GetBlocksResponse
}
return nil
}
func (x *KaspadMessage) GetGetBlockCountRequest() *GetBlockCountRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockCountRequest); ok {
return x.GetBlockCountRequest
}
return nil
}
func (x *KaspadMessage) GetGetBlockCountResponse() *GetBlockCountResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockCountResponse); ok {
return x.GetBlockCountResponse
}
return nil
}
func (x *KaspadMessage) GetGetBlockDagInfoRequest() *GetBlockDagInfoRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockDagInfoRequest); ok {
return x.GetBlockDagInfoRequest
}
return nil
}
func (x *KaspadMessage) GetGetBlockDagInfoResponse() *GetBlockDagInfoResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetBlockDagInfoResponse); ok {
return x.GetBlockDagInfoResponse
}
return nil
}
func (x *KaspadMessage) GetResolveFinalityConflictRequest() *ResolveFinalityConflictRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_ResolveFinalityConflictRequest); ok {
return x.ResolveFinalityConflictRequest
}
return nil
}
func (x *KaspadMessage) GetResolveFinalityConflictResponse() *ResolveFinalityConflictResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_ResolveFinalityConflictResponse); ok {
return x.ResolveFinalityConflictResponse
}
return nil
}
func (x *KaspadMessage) GetNotifyFinalityConflictsRequest() *NotifyFinalityConflictsRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_NotifyFinalityConflictsRequest); ok {
return x.NotifyFinalityConflictsRequest
}
return nil
}
func (x *KaspadMessage) GetNotifyFinalityConflictsResponse() *NotifyFinalityConflictsResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_NotifyFinalityConflictsResponse); ok {
return x.NotifyFinalityConflictsResponse
}
return nil
}
func (x *KaspadMessage) GetFinalityConflictNotification() *FinalityConflictNotificationMessage {
if x, ok := x.GetPayload().(*KaspadMessage_FinalityConflictNotification); ok {
return x.FinalityConflictNotification
}
return nil
}
func (x *KaspadMessage) GetFinalityConflictResolvedNotification() *FinalityConflictResolvedNotificationMessage {
if x, ok := x.GetPayload().(*KaspadMessage_FinalityConflictResolvedNotification); ok {
return x.FinalityConflictResolvedNotification
}
return nil
}
func (x *KaspadMessage) GetGetMempoolEntriesRequest() *GetMempoolEntriesRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetMempoolEntriesRequest); ok {
return x.GetMempoolEntriesRequest
}
return nil
}
func (x *KaspadMessage) GetGetMempoolEntriesResponse() *GetMempoolEntriesResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetMempoolEntriesResponse); ok {
return x.GetMempoolEntriesResponse
}
return nil
}
func (x *KaspadMessage) GetShutDownRequest() *ShutDownRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_ShutDownRequest); ok {
return x.ShutDownRequest
}
return nil
}
func (x *KaspadMessage) GetShutDownResponse() *ShutDownResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_ShutDownResponse); ok {
return x.ShutDownResponse
}
return nil
}
func (x *KaspadMessage) GetGetHeadersRequest() *GetHeadersRequestMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetHeadersRequest); ok {
return x.GetHeadersRequest
}
return nil
}
func (x *KaspadMessage) GetGetHeadersResponse() *GetHeadersResponseMessage {
if x, ok := x.GetPayload().(*KaspadMessage_GetHeadersResponse); ok {
return x.GetHeadersResponse
}
return nil
}
type isKaspadMessage_Payload interface {
isKaspadMessage_Payload()
}
type KaspadMessage_Addresses struct {
Addresses *AddressesMessage `protobuf:"bytes,1,opt,name=addresses,proto3,oneof"`
}
type KaspadMessage_Block struct {
Block *BlockMessage `protobuf:"bytes,2,opt,name=block,proto3,oneof"`
}
type KaspadMessage_Transaction struct {
Transaction *TransactionMessage `protobuf:"bytes,3,opt,name=transaction,proto3,oneof"`
}
type KaspadMessage_RequestBlockLocator struct {
RequestBlockLocator *RequestBlockLocatorMessage `protobuf:"bytes,4,opt,name=requestBlockLocator,proto3,oneof"`
}
type KaspadMessage_BlockLocator struct {
BlockLocator *BlockLocatorMessage `protobuf:"bytes,5,opt,name=blockLocator,proto3,oneof"`
}
type KaspadMessage_RequestAddresses struct {
RequestAddresses *RequestAddressesMessage `protobuf:"bytes,6,opt,name=requestAddresses,proto3,oneof"`
}
type KaspadMessage_RequestIBDBlocks struct {
RequestIBDBlocks *RequestIBDBlocksMessage `protobuf:"bytes,7,opt,name=requestIBDBlocks,proto3,oneof"`
}
type KaspadMessage_RequestNextIBDBlocks struct {
RequestNextIBDBlocks *RequestNextIBDBlocksMessage `protobuf:"bytes,8,opt,name=requestNextIBDBlocks,proto3,oneof"`
}
type KaspadMessage_DoneIBDBlocks struct {
DoneIBDBlocks *DoneIBDBlocksMessage `protobuf:"bytes,9,opt,name=DoneIBDBlocks,proto3,oneof"`
}
type KaspadMessage_RequestRelayBlocks struct {
RequestRelayBlocks *RequestRelayBlocksMessage `protobuf:"bytes,10,opt,name=requestRelayBlocks,proto3,oneof"`
}
type KaspadMessage_RequestSelectedTip struct {
RequestSelectedTip *RequestSelectedTipMessage `protobuf:"bytes,11,opt,name=requestSelectedTip,proto3,oneof"`
}
type KaspadMessage_RequestTransactions struct {
RequestTransactions *RequestTransactionsMessage `protobuf:"bytes,12,opt,name=requestTransactions,proto3,oneof"`
}
type KaspadMessage_IbdBlock struct {
IbdBlock *BlockMessage `protobuf:"bytes,13,opt,name=ibdBlock,proto3,oneof"`
}
type KaspadMessage_InvRelayBlock struct {
InvRelayBlock *InvRelayBlockMessage `protobuf:"bytes,14,opt,name=invRelayBlock,proto3,oneof"`
}
type KaspadMessage_InvTransactions struct {
InvTransactions *InvTransactionsMessage `protobuf:"bytes,15,opt,name=invTransactions,proto3,oneof"`
}
type KaspadMessage_Ping struct {
Ping *PingMessage `protobuf:"bytes,16,opt,name=ping,proto3,oneof"`
}
type KaspadMessage_Pong struct {
Pong *PongMessage `protobuf:"bytes,17,opt,name=pong,proto3,oneof"`
}
type KaspadMessage_SelectedTip struct {
SelectedTip *SelectedTipMessage `protobuf:"bytes,18,opt,name=selectedTip,proto3,oneof"`
}
type KaspadMessage_Verack struct {
Verack *VerackMessage `protobuf:"bytes,19,opt,name=verack,proto3,oneof"`
}
type KaspadMessage_Version struct {
Version *VersionMessage `protobuf:"bytes,20,opt,name=version,proto3,oneof"`
}
type KaspadMessage_TransactionNotFound struct {
TransactionNotFound *TransactionNotFoundMessage `protobuf:"bytes,21,opt,name=transactionNotFound,proto3,oneof"`
}
type KaspadMessage_Reject struct {
Reject *RejectMessage `protobuf:"bytes,22,opt,name=reject,proto3,oneof"`
}
type KaspadMessage_GetCurrentNetworkRequest struct {
GetCurrentNetworkRequest *GetCurrentNetworkRequestMessage `protobuf:"bytes,1001,opt,name=getCurrentNetworkRequest,proto3,oneof"`
}
type KaspadMessage_GetCurrentNetworkResponse struct {
GetCurrentNetworkResponse *GetCurrentNetworkResponseMessage `protobuf:"bytes,1002,opt,name=getCurrentNetworkResponse,proto3,oneof"`
}
type KaspadMessage_SubmitBlockRequest struct {
SubmitBlockRequest *SubmitBlockRequestMessage `protobuf:"bytes,1003,opt,name=submitBlockRequest,proto3,oneof"`
}
type KaspadMessage_SubmitBlockResponse struct {
SubmitBlockResponse *SubmitBlockResponseMessage `protobuf:"bytes,1004,opt,name=submitBlockResponse,proto3,oneof"`
}
type KaspadMessage_GetBlockTemplateRequest struct {
GetBlockTemplateRequest *GetBlockTemplateRequestMessage `protobuf:"bytes,1005,opt,name=getBlockTemplateRequest,proto3,oneof"`
}
type KaspadMessage_GetBlockTemplateResponse struct {
GetBlockTemplateResponse *GetBlockTemplateResponseMessage `protobuf:"bytes,1006,opt,name=getBlockTemplateResponse,proto3,oneof"`
}
type KaspadMessage_NotifyBlockAddedRequest struct {
NotifyBlockAddedRequest *NotifyBlockAddedRequestMessage `protobuf:"bytes,1007,opt,name=notifyBlockAddedRequest,proto3,oneof"`
}
type KaspadMessage_NotifyBlockAddedResponse struct {
NotifyBlockAddedResponse *NotifyBlockAddedResponseMessage `protobuf:"bytes,1008,opt,name=notifyBlockAddedResponse,proto3,oneof"`
}
type KaspadMessage_BlockAddedNotification struct {
BlockAddedNotification *BlockAddedNotificationMessage `protobuf:"bytes,1009,opt,name=blockAddedNotification,proto3,oneof"`
}
type KaspadMessage_GetPeerAddressesRequest struct {
GetPeerAddressesRequest *GetPeerAddressesRequestMessage `protobuf:"bytes,1010,opt,name=getPeerAddressesRequest,proto3,oneof"`
}
type KaspadMessage_GetPeerAddressesResponse struct {
GetPeerAddressesResponse *GetPeerAddressesResponseMessage `protobuf:"bytes,1011,opt,name=getPeerAddressesResponse,proto3,oneof"`
}
type KaspadMessage_GetSelectedTipHashRequest struct {
GetSelectedTipHashRequest *GetSelectedTipHashRequestMessage `protobuf:"bytes,1012,opt,name=getSelectedTipHashRequest,proto3,oneof"`
}
type KaspadMessage_GetSelectedTipHashResponse struct {
GetSelectedTipHashResponse *GetSelectedTipHashResponseMessage `protobuf:"bytes,1013,opt,name=getSelectedTipHashResponse,proto3,oneof"`
}
type KaspadMessage_GetMempoolEntryRequest struct {
GetMempoolEntryRequest *GetMempoolEntryRequestMessage `protobuf:"bytes,1014,opt,name=getMempoolEntryRequest,proto3,oneof"`
}
type KaspadMessage_GetMempoolEntryResponse struct {
GetMempoolEntryResponse *GetMempoolEntryResponseMessage `protobuf:"bytes,1015,opt,name=getMempoolEntryResponse,proto3,oneof"`
}
type KaspadMessage_GetConnectedPeerInfoRequest struct {
GetConnectedPeerInfoRequest *GetConnectedPeerInfoRequestMessage `protobuf:"bytes,1016,opt,name=getConnectedPeerInfoRequest,proto3,oneof"`
}
type KaspadMessage_GetConnectedPeerInfoResponse struct {
GetConnectedPeerInfoResponse *GetConnectedPeerInfoResponseMessage `protobuf:"bytes,1017,opt,name=getConnectedPeerInfoResponse,proto3,oneof"`
}
type KaspadMessage_AddPeerRequest struct {
AddPeerRequest *AddPeerRequestMessage `protobuf:"bytes,1018,opt,name=addPeerRequest,proto3,oneof"`
}
type KaspadMessage_AddPeerResponse struct {
AddPeerResponse *AddPeerResponseMessage `protobuf:"bytes,1019,opt,name=addPeerResponse,proto3,oneof"`
}
type KaspadMessage_SubmitTransactionRequest struct {
SubmitTransactionRequest *SubmitTransactionRequestMessage `protobuf:"bytes,1020,opt,name=submitTransactionRequest,proto3,oneof"`
}
type KaspadMessage_SubmitTransactionResponse struct {
SubmitTransactionResponse *SubmitTransactionResponseMessage `protobuf:"bytes,1021,opt,name=submitTransactionResponse,proto3,oneof"`
}
type KaspadMessage_NotifyChainChangedRequest struct {
NotifyChainChangedRequest *NotifyChainChangedRequestMessage `protobuf:"bytes,1022,opt,name=notifyChainChangedRequest,proto3,oneof"`
}
type KaspadMessage_NotifyChainChangedResponse struct {
NotifyChainChangedResponse *NotifyChainChangedResponseMessage `protobuf:"bytes,1023,opt,name=notifyChainChangedResponse,proto3,oneof"`
}
type KaspadMessage_ChainChangedNotification struct {
ChainChangedNotification *ChainChangedNotificationMessage `protobuf:"bytes,1024,opt,name=chainChangedNotification,proto3,oneof"`
}
type KaspadMessage_GetBlockRequest struct {
GetBlockRequest *GetBlockRequestMessage `protobuf:"bytes,1025,opt,name=getBlockRequest,proto3,oneof"`
}
type KaspadMessage_GetBlockResponse struct {
GetBlockResponse *GetBlockResponseMessage `protobuf:"bytes,1026,opt,name=getBlockResponse,proto3,oneof"`
}
type KaspadMessage_GetSubnetworkRequest struct {
GetSubnetworkRequest *GetSubnetworkRequestMessage `protobuf:"bytes,1027,opt,name=getSubnetworkRequest,proto3,oneof"`
}
type KaspadMessage_GetSubnetworkResponse struct {
GetSubnetworkResponse *GetSubnetworkResponseMessage `protobuf:"bytes,1028,opt,name=getSubnetworkResponse,proto3,oneof"`
}
type KaspadMessage_GetChainFromBlockRequest struct {
GetChainFromBlockRequest *GetChainFromBlockRequestMessage `protobuf:"bytes,1029,opt,name=getChainFromBlockRequest,proto3,oneof"`
}
type KaspadMessage_GetChainFromBlockResponse struct {
GetChainFromBlockResponse *GetChainFromBlockResponseMessage `protobuf:"bytes,1030,opt,name=getChainFromBlockResponse,proto3,oneof"`
}
type KaspadMessage_GetBlocksRequest struct {
GetBlocksRequest *GetBlocksRequestMessage `protobuf:"bytes,1031,opt,name=getBlocksRequest,proto3,oneof"`
}
type KaspadMessage_GetBlocksResponse struct {
GetBlocksResponse *GetBlocksResponseMessage `protobuf:"bytes,1032,opt,name=getBlocksResponse,proto3,oneof"`
}
type KaspadMessage_GetBlockCountRequest struct {
GetBlockCountRequest *GetBlockCountRequestMessage `protobuf:"bytes,1033,opt,name=getBlockCountRequest,proto3,oneof"`
}
type KaspadMessage_GetBlockCountResponse struct {
GetBlockCountResponse *GetBlockCountResponseMessage `protobuf:"bytes,1034,opt,name=getBlockCountResponse,proto3,oneof"`
}
type KaspadMessage_GetBlockDagInfoRequest struct {
GetBlockDagInfoRequest *GetBlockDagInfoRequestMessage `protobuf:"bytes,1035,opt,name=getBlockDagInfoRequest,proto3,oneof"`
}
type KaspadMessage_GetBlockDagInfoResponse struct {
GetBlockDagInfoResponse *GetBlockDagInfoResponseMessage `protobuf:"bytes,1036,opt,name=getBlockDagInfoResponse,proto3,oneof"`
}
type KaspadMessage_ResolveFinalityConflictRequest struct {
ResolveFinalityConflictRequest *ResolveFinalityConflictRequestMessage `protobuf:"bytes,1037,opt,name=resolveFinalityConflictRequest,proto3,oneof"`
}
type KaspadMessage_ResolveFinalityConflictResponse struct {
ResolveFinalityConflictResponse *ResolveFinalityConflictResponseMessage `protobuf:"bytes,1038,opt,name=resolveFinalityConflictResponse,proto3,oneof"`
}
type KaspadMessage_NotifyFinalityConflictsRequest struct {
NotifyFinalityConflictsRequest *NotifyFinalityConflictsRequestMessage `protobuf:"bytes,1039,opt,name=notifyFinalityConflictsRequest,proto3,oneof"`
}
type KaspadMessage_NotifyFinalityConflictsResponse struct {
NotifyFinalityConflictsResponse *NotifyFinalityConflictsResponseMessage `protobuf:"bytes,1040,opt,name=notifyFinalityConflictsResponse,proto3,oneof"`
}
type KaspadMessage_FinalityConflictNotification struct {
FinalityConflictNotification *FinalityConflictNotificationMessage `protobuf:"bytes,1041,opt,name=finalityConflictNotification,proto3,oneof"`
}
type KaspadMessage_FinalityConflictResolvedNotification struct {
FinalityConflictResolvedNotification *FinalityConflictResolvedNotificationMessage `protobuf:"bytes,1042,opt,name=finalityConflictResolvedNotification,proto3,oneof"`
}
type KaspadMessage_GetMempoolEntriesRequest struct {
GetMempoolEntriesRequest *GetMempoolEntriesRequestMessage `protobuf:"bytes,1043,opt,name=getMempoolEntriesRequest,proto3,oneof"`
}
type KaspadMessage_GetMempoolEntriesResponse struct {
GetMempoolEntriesResponse *GetMempoolEntriesResponseMessage `protobuf:"bytes,1044,opt,name=getMempoolEntriesResponse,proto3,oneof"`
}
type KaspadMessage_ShutDownRequest struct {
ShutDownRequest *ShutDownRequestMessage `protobuf:"bytes,1045,opt,name=shutDownRequest,proto3,oneof"`
}
type KaspadMessage_ShutDownResponse struct {
ShutDownResponse *ShutDownResponseMessage `protobuf:"bytes,1046,opt,name=shutDownResponse,proto3,oneof"`
}
type KaspadMessage_GetHeadersRequest struct {
GetHeadersRequest *GetHeadersRequestMessage `protobuf:"bytes,10347,opt,name=getHeadersRequest,proto3,oneof"`
}
type KaspadMessage_GetHeadersResponse struct {
GetHeadersResponse *GetHeadersResponseMessage `protobuf:"bytes,1048,opt,name=getHeadersResponse,proto3,oneof"`
}
func (*KaspadMessage_Addresses) isKaspadMessage_Payload() {}
func (*KaspadMessage_Block) isKaspadMessage_Payload() {}
func (*KaspadMessage_Transaction) isKaspadMessage_Payload() {}
func (*KaspadMessage_RequestBlockLocator) isKaspadMessage_Payload() {}
func (*KaspadMessage_BlockLocator) isKaspadMessage_Payload() {}
func (*KaspadMessage_RequestAddresses) isKaspadMessage_Payload() {}
func (*KaspadMessage_RequestIBDBlocks) isKaspadMessage_Payload() {}
func (*KaspadMessage_RequestNextIBDBlocks) isKaspadMessage_Payload() {}
func (*KaspadMessage_DoneIBDBlocks) isKaspadMessage_Payload() {}
func (*KaspadMessage_RequestRelayBlocks) isKaspadMessage_Payload() {}
func (*KaspadMessage_RequestSelectedTip) isKaspadMessage_Payload() {}
func (*KaspadMessage_RequestTransactions) isKaspadMessage_Payload() {}
func (*KaspadMessage_IbdBlock) isKaspadMessage_Payload() {}
func (*KaspadMessage_InvRelayBlock) isKaspadMessage_Payload() {}
func (*KaspadMessage_InvTransactions) isKaspadMessage_Payload() {}
func (*KaspadMessage_Ping) isKaspadMessage_Payload() {}
func (*KaspadMessage_Pong) isKaspadMessage_Payload() {}
func (*KaspadMessage_SelectedTip) isKaspadMessage_Payload() {}
func (*KaspadMessage_Verack) isKaspadMessage_Payload() {}
func (*KaspadMessage_Version) isKaspadMessage_Payload() {}
func (*KaspadMessage_TransactionNotFound) isKaspadMessage_Payload() {}
func (*KaspadMessage_Reject) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetCurrentNetworkRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetCurrentNetworkResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_SubmitBlockRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_SubmitBlockResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockTemplateRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockTemplateResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_NotifyBlockAddedRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_NotifyBlockAddedResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_BlockAddedNotification) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetPeerAddressesRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetPeerAddressesResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetSelectedTipHashRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetSelectedTipHashResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetMempoolEntryRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetMempoolEntryResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetConnectedPeerInfoRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetConnectedPeerInfoResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_AddPeerRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_AddPeerResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_SubmitTransactionRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_SubmitTransactionResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_NotifyChainChangedRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_NotifyChainChangedResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_ChainChangedNotification) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetSubnetworkRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetSubnetworkResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetChainFromBlockRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetChainFromBlockResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlocksRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlocksResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockCountRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockCountResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockDagInfoRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetBlockDagInfoResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_ResolveFinalityConflictRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_ResolveFinalityConflictResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_NotifyFinalityConflictsRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_NotifyFinalityConflictsResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_FinalityConflictNotification) isKaspadMessage_Payload() {}
func (*KaspadMessage_FinalityConflictResolvedNotification) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetMempoolEntriesRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetMempoolEntriesResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_ShutDownRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_ShutDownResponse) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetHeadersRequest) isKaspadMessage_Payload() {}
func (*KaspadMessage_GetHeadersResponse) isKaspadMessage_Payload() {}
// AddressesMessage start
type AddressesMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
IncludeAllSubnetworks bool `protobuf:"varint,1,opt,name=includeAllSubnetworks,proto3" json:"includeAllSubnetworks,omitempty"`
SubnetworkID *SubnetworkID `protobuf:"bytes,2,opt,name=subnetworkID,proto3" json:"subnetworkID,omitempty"`
AddressList []*NetAddress `protobuf:"bytes,3,rep,name=addressList,proto3" json:"addressList,omitempty"`
}
func (x *AddressesMessage) Reset() {
*x = AddressesMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddressesMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddressesMessage) ProtoMessage() {}
func (x *AddressesMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 AddressesMessage.ProtoReflect.Descriptor instead.
func (*AddressesMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{1}
}
func (x *AddressesMessage) GetIncludeAllSubnetworks() bool {
if x != nil {
return x.IncludeAllSubnetworks
}
return false
}
func (x *AddressesMessage) GetSubnetworkID() *SubnetworkID {
if x != nil {
return x.SubnetworkID
}
return nil
}
func (x *AddressesMessage) GetAddressList() []*NetAddress {
if x != nil {
return x.AddressList
}
return nil
}
type NetAddress struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
Services uint64 `protobuf:"varint,2,opt,name=services,proto3" json:"services,omitempty"`
Ip []byte `protobuf:"bytes,3,opt,name=ip,proto3" json:"ip,omitempty"`
Port uint32 `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"`
}
func (x *NetAddress) Reset() {
*x = NetAddress{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NetAddress) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NetAddress) ProtoMessage() {}
func (x *NetAddress) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 NetAddress.ProtoReflect.Descriptor instead.
func (*NetAddress) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{2}
}
func (x *NetAddress) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
func (x *NetAddress) GetServices() uint64 {
if x != nil {
return x.Services
}
return 0
}
func (x *NetAddress) GetIp() []byte {
if x != nil {
return x.Ip
}
return nil
}
func (x *NetAddress) GetPort() uint32 {
if x != nil {
return x.Port
}
return 0
}
type SubnetworkID struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"`
}
func (x *SubnetworkID) Reset() {
*x = SubnetworkID{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubnetworkID) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubnetworkID) ProtoMessage() {}
func (x *SubnetworkID) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 SubnetworkID.ProtoReflect.Descriptor instead.
func (*SubnetworkID) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{3}
}
func (x *SubnetworkID) GetBytes() []byte {
if x != nil {
return x.Bytes
}
return nil
}
// GetAddressesMessage start
type RequestAddressesMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
IncludeAllSubnetworks bool `protobuf:"varint,1,opt,name=includeAllSubnetworks,proto3" json:"includeAllSubnetworks,omitempty"`
SubnetworkID *SubnetworkID `protobuf:"bytes,2,opt,name=subnetworkID,proto3" json:"subnetworkID,omitempty"`
}
func (x *RequestAddressesMessage) Reset() {
*x = RequestAddressesMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RequestAddressesMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RequestAddressesMessage) ProtoMessage() {}
func (x *RequestAddressesMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 RequestAddressesMessage.ProtoReflect.Descriptor instead.
func (*RequestAddressesMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{4}
}
func (x *RequestAddressesMessage) GetIncludeAllSubnetworks() bool {
if x != nil {
return x.IncludeAllSubnetworks
}
return false
}
func (x *RequestAddressesMessage) GetSubnetworkID() *SubnetworkID {
if x != nil {
return x.SubnetworkID
}
return nil
}
// TransactionMessage start
type TransactionMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Version int32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
Inputs []*TransactionInput `protobuf:"bytes,2,rep,name=inputs,proto3" json:"inputs,omitempty"`
Outputs []*TransactionOutput `protobuf:"bytes,3,rep,name=outputs,proto3" json:"outputs,omitempty"`
LockTime uint64 `protobuf:"varint,4,opt,name=lockTime,proto3" json:"lockTime,omitempty"`
SubnetworkID *SubnetworkID `protobuf:"bytes,5,opt,name=subnetworkID,proto3" json:"subnetworkID,omitempty"`
Gas uint64 `protobuf:"varint,6,opt,name=gas,proto3" json:"gas,omitempty"`
PayloadHash *Hash `protobuf:"bytes,7,opt,name=payloadHash,proto3" json:"payloadHash,omitempty"`
Payload []byte `protobuf:"bytes,8,opt,name=Payload,proto3" json:"Payload,omitempty"`
}
func (x *TransactionMessage) Reset() {
*x = TransactionMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionMessage) ProtoMessage() {}
func (x *TransactionMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 TransactionMessage.ProtoReflect.Descriptor instead.
func (*TransactionMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{5}
}
func (x *TransactionMessage) GetVersion() int32 {
if x != nil {
return x.Version
}
return 0
}
func (x *TransactionMessage) GetInputs() []*TransactionInput {
if x != nil {
return x.Inputs
}
return nil
}
func (x *TransactionMessage) GetOutputs() []*TransactionOutput {
if x != nil {
return x.Outputs
}
return nil
}
func (x *TransactionMessage) GetLockTime() uint64 {
if x != nil {
return x.LockTime
}
return 0
}
func (x *TransactionMessage) GetSubnetworkID() *SubnetworkID {
if x != nil {
return x.SubnetworkID
}
return nil
}
func (x *TransactionMessage) GetGas() uint64 {
if x != nil {
return x.Gas
}
return 0
}
func (x *TransactionMessage) GetPayloadHash() *Hash {
if x != nil {
return x.PayloadHash
}
return nil
}
func (x *TransactionMessage) GetPayload() []byte {
if x != nil {
return x.Payload
}
return nil
}
type TransactionInput struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
PreviousOutpoint *Outpoint `protobuf:"bytes,1,opt,name=PreviousOutpoint,proto3" json:"PreviousOutpoint,omitempty"`
SignatureScript []byte `protobuf:"bytes,2,opt,name=SignatureScript,proto3" json:"SignatureScript,omitempty"`
Sequence uint64 `protobuf:"varint,3,opt,name=Sequence,proto3" json:"Sequence,omitempty"`
}
func (x *TransactionInput) Reset() {
*x = TransactionInput{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionInput) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionInput) ProtoMessage() {}
func (x *TransactionInput) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 TransactionInput.ProtoReflect.Descriptor instead.
func (*TransactionInput) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{6}
}
func (x *TransactionInput) GetPreviousOutpoint() *Outpoint {
if x != nil {
return x.PreviousOutpoint
}
return nil
}
func (x *TransactionInput) GetSignatureScript() []byte {
if x != nil {
return x.SignatureScript
}
return nil
}
func (x *TransactionInput) GetSequence() uint64 {
if x != nil {
return x.Sequence
}
return 0
}
type Outpoint struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TransactionID *TransactionID `protobuf:"bytes,1,opt,name=transactionID,proto3" json:"transactionID,omitempty"`
Index uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
}
func (x *Outpoint) Reset() {
*x = Outpoint{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Outpoint) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Outpoint) ProtoMessage() {}
func (x *Outpoint) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 Outpoint.ProtoReflect.Descriptor instead.
func (*Outpoint) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{7}
}
func (x *Outpoint) GetTransactionID() *TransactionID {
if x != nil {
return x.TransactionID
}
return nil
}
func (x *Outpoint) GetIndex() uint32 {
if x != nil {
return x.Index
}
return 0
}
type TransactionID struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"`
}
func (x *TransactionID) Reset() {
*x = TransactionID{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionID) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionID) ProtoMessage() {}
func (x *TransactionID) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 TransactionID.ProtoReflect.Descriptor instead.
func (*TransactionID) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{8}
}
func (x *TransactionID) GetBytes() []byte {
if x != nil {
return x.Bytes
}
return nil
}
type TransactionOutput struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Value uint64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
ScriptPubKey []byte `protobuf:"bytes,2,opt,name=ScriptPubKey,proto3" json:"ScriptPubKey,omitempty"`
}
func (x *TransactionOutput) Reset() {
*x = TransactionOutput{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionOutput) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionOutput) ProtoMessage() {}
func (x *TransactionOutput) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 TransactionOutput.ProtoReflect.Descriptor instead.
func (*TransactionOutput) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{9}
}
func (x *TransactionOutput) GetValue() uint64 {
if x != nil {
return x.Value
}
return 0
}
func (x *TransactionOutput) GetScriptPubKey() []byte {
if x != nil {
return x.ScriptPubKey
}
return nil
}
// BlockMessage start
type BlockMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Header *BlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
Transactions []*TransactionMessage `protobuf:"bytes,2,rep,name=transactions,proto3" json:"transactions,omitempty"`
}
func (x *BlockMessage) Reset() {
*x = BlockMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BlockMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BlockMessage) ProtoMessage() {}
func (x *BlockMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 BlockMessage.ProtoReflect.Descriptor instead.
func (*BlockMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{10}
}
func (x *BlockMessage) GetHeader() *BlockHeader {
if x != nil {
return x.Header
}
return nil
}
func (x *BlockMessage) GetTransactions() []*TransactionMessage {
if x != nil {
return x.Transactions
}
return nil
}
type BlockHeader struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Version int32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
ParentHashes []*Hash `protobuf:"bytes,2,rep,name=parentHashes,proto3" json:"parentHashes,omitempty"`
HashMerkleRoot *Hash `protobuf:"bytes,3,opt,name=hashMerkleRoot,proto3" json:"hashMerkleRoot,omitempty"`
AcceptedIDMerkleRoot *Hash `protobuf:"bytes,4,opt,name=acceptedIDMerkleRoot,proto3" json:"acceptedIDMerkleRoot,omitempty"`
UtxoCommitment *Hash `protobuf:"bytes,5,opt,name=utxoCommitment,proto3" json:"utxoCommitment,omitempty"`
Timestamp int64 `protobuf:"varint,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
Bits uint32 `protobuf:"varint,7,opt,name=bits,proto3" json:"bits,omitempty"`
Nonce uint64 `protobuf:"varint,8,opt,name=nonce,proto3" json:"nonce,omitempty"`
}
func (x *BlockHeader) Reset() {
*x = BlockHeader{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[11]
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_messages_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 BlockHeader.ProtoReflect.Descriptor instead.
func (*BlockHeader) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{11}
}
func (x *BlockHeader) GetVersion() int32 {
if x != nil {
return x.Version
}
return 0
}
func (x *BlockHeader) GetParentHashes() []*Hash {
if x != nil {
return x.ParentHashes
}
return nil
}
func (x *BlockHeader) GetHashMerkleRoot() *Hash {
if x != nil {
return x.HashMerkleRoot
}
return nil
}
func (x *BlockHeader) GetAcceptedIDMerkleRoot() *Hash {
if x != nil {
return x.AcceptedIDMerkleRoot
}
return nil
}
func (x *BlockHeader) GetUtxoCommitment() *Hash {
if x != nil {
return x.UtxoCommitment
}
return nil
}
func (x *BlockHeader) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
func (x *BlockHeader) GetBits() uint32 {
if x != nil {
return x.Bits
}
return 0
}
func (x *BlockHeader) GetNonce() uint64 {
if x != nil {
return x.Nonce
}
return 0
}
type Hash struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"`
}
func (x *Hash) Reset() {
*x = Hash{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Hash) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Hash) ProtoMessage() {}
func (x *Hash) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 Hash.ProtoReflect.Descriptor instead.
func (*Hash) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{12}
}
func (x *Hash) GetBytes() []byte {
if x != nil {
return x.Bytes
}
return nil
}
// GetBlockLocatorMessage start
type RequestBlockLocatorMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
LowHash *Hash `protobuf:"bytes,1,opt,name=lowHash,proto3" json:"lowHash,omitempty"`
HighHash *Hash `protobuf:"bytes,2,opt,name=highHash,proto3" json:"highHash,omitempty"`
}
func (x *RequestBlockLocatorMessage) Reset() {
*x = RequestBlockLocatorMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RequestBlockLocatorMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RequestBlockLocatorMessage) ProtoMessage() {}
func (x *RequestBlockLocatorMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 RequestBlockLocatorMessage.ProtoReflect.Descriptor instead.
func (*RequestBlockLocatorMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{13}
}
func (x *RequestBlockLocatorMessage) GetLowHash() *Hash {
if x != nil {
return x.LowHash
}
return nil
}
func (x *RequestBlockLocatorMessage) GetHighHash() *Hash {
if x != nil {
return x.HighHash
}
return nil
}
// BlockLocatorMessage start
type BlockLocatorMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hashes []*Hash `protobuf:"bytes,1,rep,name=hashes,proto3" json:"hashes,omitempty"`
}
func (x *BlockLocatorMessage) Reset() {
*x = BlockLocatorMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BlockLocatorMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BlockLocatorMessage) ProtoMessage() {}
func (x *BlockLocatorMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 BlockLocatorMessage.ProtoReflect.Descriptor instead.
func (*BlockLocatorMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{14}
}
func (x *BlockLocatorMessage) GetHashes() []*Hash {
if x != nil {
return x.Hashes
}
return nil
}
// GetBlocksMessage start
type RequestIBDBlocksMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
LowHash *Hash `protobuf:"bytes,1,opt,name=lowHash,proto3" json:"lowHash,omitempty"`
HighHash *Hash `protobuf:"bytes,2,opt,name=highHash,proto3" json:"highHash,omitempty"`
}
func (x *RequestIBDBlocksMessage) Reset() {
*x = RequestIBDBlocksMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RequestIBDBlocksMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RequestIBDBlocksMessage) ProtoMessage() {}
func (x *RequestIBDBlocksMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 RequestIBDBlocksMessage.ProtoReflect.Descriptor instead.
func (*RequestIBDBlocksMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{15}
}
func (x *RequestIBDBlocksMessage) GetLowHash() *Hash {
if x != nil {
return x.LowHash
}
return nil
}
func (x *RequestIBDBlocksMessage) GetHighHash() *Hash {
if x != nil {
return x.HighHash
}
return nil
}
// RequestNextIBDBlocksMessage start
type RequestNextIBDBlocksMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *RequestNextIBDBlocksMessage) Reset() {
*x = RequestNextIBDBlocksMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RequestNextIBDBlocksMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RequestNextIBDBlocksMessage) ProtoMessage() {}
func (x *RequestNextIBDBlocksMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 RequestNextIBDBlocksMessage.ProtoReflect.Descriptor instead.
func (*RequestNextIBDBlocksMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{16}
}
// DoneIBDBlocksMessage start
type DoneIBDBlocksMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *DoneIBDBlocksMessage) Reset() {
*x = DoneIBDBlocksMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DoneIBDBlocksMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DoneIBDBlocksMessage) ProtoMessage() {}
func (x *DoneIBDBlocksMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 DoneIBDBlocksMessage.ProtoReflect.Descriptor instead.
func (*DoneIBDBlocksMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{17}
}
// GetRelayBlocksMessage start
type RequestRelayBlocksMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hashes []*Hash `protobuf:"bytes,1,rep,name=hashes,proto3" json:"hashes,omitempty"`
}
func (x *RequestRelayBlocksMessage) Reset() {
*x = RequestRelayBlocksMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RequestRelayBlocksMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RequestRelayBlocksMessage) ProtoMessage() {}
func (x *RequestRelayBlocksMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 RequestRelayBlocksMessage.ProtoReflect.Descriptor instead.
func (*RequestRelayBlocksMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{18}
}
func (x *RequestRelayBlocksMessage) GetHashes() []*Hash {
if x != nil {
return x.Hashes
}
return nil
}
// GetSelectedTipMessage start
type RequestSelectedTipMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *RequestSelectedTipMessage) Reset() {
*x = RequestSelectedTipMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RequestSelectedTipMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RequestSelectedTipMessage) ProtoMessage() {}
func (x *RequestSelectedTipMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 RequestSelectedTipMessage.ProtoReflect.Descriptor instead.
func (*RequestSelectedTipMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{19}
}
// RequestTransactionsMessage start
type RequestTransactionsMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Ids []*TransactionID `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"`
}
func (x *RequestTransactionsMessage) Reset() {
*x = RequestTransactionsMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RequestTransactionsMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RequestTransactionsMessage) ProtoMessage() {}
func (x *RequestTransactionsMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 RequestTransactionsMessage.ProtoReflect.Descriptor instead.
func (*RequestTransactionsMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{20}
}
func (x *RequestTransactionsMessage) GetIds() []*TransactionID {
if x != nil {
return x.Ids
}
return nil
}
// TransactionNotFoundMessage start
type TransactionNotFoundMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id *TransactionID `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
}
func (x *TransactionNotFoundMessage) Reset() {
*x = TransactionNotFoundMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionNotFoundMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionNotFoundMessage) ProtoMessage() {}
func (x *TransactionNotFoundMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 TransactionNotFoundMessage.ProtoReflect.Descriptor instead.
func (*TransactionNotFoundMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{21}
}
func (x *TransactionNotFoundMessage) GetId() *TransactionID {
if x != nil {
return x.Id
}
return nil
}
// InvRelayBlockMessage start
type InvRelayBlockMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hash *Hash `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
}
func (x *InvRelayBlockMessage) Reset() {
*x = InvRelayBlockMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InvRelayBlockMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InvRelayBlockMessage) ProtoMessage() {}
func (x *InvRelayBlockMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 InvRelayBlockMessage.ProtoReflect.Descriptor instead.
func (*InvRelayBlockMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{22}
}
func (x *InvRelayBlockMessage) GetHash() *Hash {
if x != nil {
return x.Hash
}
return nil
}
// InvTransactionMessage start
type InvTransactionsMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Ids []*TransactionID `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"`
}
func (x *InvTransactionsMessage) Reset() {
*x = InvTransactionsMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InvTransactionsMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InvTransactionsMessage) ProtoMessage() {}
func (x *InvTransactionsMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_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 InvTransactionsMessage.ProtoReflect.Descriptor instead.
func (*InvTransactionsMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{23}
}
func (x *InvTransactionsMessage) GetIds() []*TransactionID {
if x != nil {
return x.Ids
}
return nil
}
// PingMessage start
type PingMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
}
func (x *PingMessage) Reset() {
*x = PingMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PingMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PingMessage) ProtoMessage() {}
func (x *PingMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[24]
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 PingMessage.ProtoReflect.Descriptor instead.
func (*PingMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{24}
}
func (x *PingMessage) GetNonce() uint64 {
if x != nil {
return x.Nonce
}
return 0
}
// PongMessage start
type PongMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
}
func (x *PongMessage) Reset() {
*x = PongMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PongMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PongMessage) ProtoMessage() {}
func (x *PongMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[25]
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 PongMessage.ProtoReflect.Descriptor instead.
func (*PongMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{25}
}
func (x *PongMessage) GetNonce() uint64 {
if x != nil {
return x.Nonce
}
return 0
}
// SelectedTipMessage start
type SelectedTipMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SelectedTipHash *Hash `protobuf:"bytes,1,opt,name=selectedTipHash,proto3" json:"selectedTipHash,omitempty"`
}
func (x *SelectedTipMessage) Reset() {
*x = SelectedTipMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SelectedTipMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SelectedTipMessage) ProtoMessage() {}
func (x *SelectedTipMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[26]
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 SelectedTipMessage.ProtoReflect.Descriptor instead.
func (*SelectedTipMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{26}
}
func (x *SelectedTipMessage) GetSelectedTipHash() *Hash {
if x != nil {
return x.SelectedTipHash
}
return nil
}
// VerackMessage start
type VerackMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *VerackMessage) Reset() {
*x = VerackMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VerackMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VerackMessage) ProtoMessage() {}
func (x *VerackMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[27]
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 VerackMessage.ProtoReflect.Descriptor instead.
func (*VerackMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{27}
}
// VersionMessage start
type VersionMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ProtocolVersion uint32 `protobuf:"varint,1,opt,name=protocolVersion,proto3" json:"protocolVersion,omitempty"`
Services uint64 `protobuf:"varint,2,opt,name=services,proto3" json:"services,omitempty"`
Timestamp int64 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
Address *NetAddress `protobuf:"bytes,4,opt,name=address,proto3" json:"address,omitempty"`
Id []byte `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`
UserAgent string `protobuf:"bytes,6,opt,name=userAgent,proto3" json:"userAgent,omitempty"`
SelectedTipHash *Hash `protobuf:"bytes,7,opt,name=selectedTipHash,proto3" json:"selectedTipHash,omitempty"`
DisableRelayTx bool `protobuf:"varint,8,opt,name=disableRelayTx,proto3" json:"disableRelayTx,omitempty"`
SubnetworkID *SubnetworkID `protobuf:"bytes,9,opt,name=subnetworkID,proto3" json:"subnetworkID,omitempty"`
Network string `protobuf:"bytes,10,opt,name=network,proto3" json:"network,omitempty"`
}
func (x *VersionMessage) Reset() {
*x = VersionMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VersionMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VersionMessage) ProtoMessage() {}
func (x *VersionMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[28]
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 VersionMessage.ProtoReflect.Descriptor instead.
func (*VersionMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{28}
}
func (x *VersionMessage) GetProtocolVersion() uint32 {
if x != nil {
return x.ProtocolVersion
}
return 0
}
func (x *VersionMessage) GetServices() uint64 {
if x != nil {
return x.Services
}
return 0
}
func (x *VersionMessage) GetTimestamp() int64 {
if x != nil {
return x.Timestamp
}
return 0
}
func (x *VersionMessage) GetAddress() *NetAddress {
if x != nil {
return x.Address
}
return nil
}
func (x *VersionMessage) GetId() []byte {
if x != nil {
return x.Id
}
return nil
}
func (x *VersionMessage) GetUserAgent() string {
if x != nil {
return x.UserAgent
}
return ""
}
func (x *VersionMessage) GetSelectedTipHash() *Hash {
if x != nil {
return x.SelectedTipHash
}
return nil
}
func (x *VersionMessage) GetDisableRelayTx() bool {
if x != nil {
return x.DisableRelayTx
}
return false
}
func (x *VersionMessage) GetSubnetworkID() *SubnetworkID {
if x != nil {
return x.SubnetworkID
}
return nil
}
func (x *VersionMessage) GetNetwork() string {
if x != nil {
return x.Network
}
return ""
}
// RejectMessage start
type RejectMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Reason string `protobuf:"bytes,1,opt,name=reason,proto3" json:"reason,omitempty"`
}
func (x *RejectMessage) Reset() {
*x = RejectMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RejectMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RejectMessage) ProtoMessage() {}
func (x *RejectMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[29]
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 RejectMessage.ProtoReflect.Descriptor instead.
func (*RejectMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{29}
}
func (x *RejectMessage) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
type RPCError struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *RPCError) Reset() {
*x = RPCError{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RPCError) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RPCError) ProtoMessage() {}
func (x *RPCError) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[30]
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 RPCError.ProtoReflect.Descriptor instead.
func (*RPCError) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{30}
}
func (x *RPCError) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
type GetCurrentNetworkRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetCurrentNetworkRequestMessage) Reset() {
*x = GetCurrentNetworkRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetCurrentNetworkRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetCurrentNetworkRequestMessage) ProtoMessage() {}
func (x *GetCurrentNetworkRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[31]
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 GetCurrentNetworkRequestMessage.ProtoReflect.Descriptor instead.
func (*GetCurrentNetworkRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{31}
}
type GetCurrentNetworkResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
CurrentNetwork string `protobuf:"bytes,1,opt,name=currentNetwork,proto3" json:"currentNetwork,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetCurrentNetworkResponseMessage) Reset() {
*x = GetCurrentNetworkResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetCurrentNetworkResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetCurrentNetworkResponseMessage) ProtoMessage() {}
func (x *GetCurrentNetworkResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[32]
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 GetCurrentNetworkResponseMessage.ProtoReflect.Descriptor instead.
func (*GetCurrentNetworkResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{32}
}
func (x *GetCurrentNetworkResponseMessage) GetCurrentNetwork() string {
if x != nil {
return x.CurrentNetwork
}
return ""
}
func (x *GetCurrentNetworkResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type SubmitBlockRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Block *BlockMessage `protobuf:"bytes,1,opt,name=block,proto3" json:"block,omitempty"`
}
func (x *SubmitBlockRequestMessage) Reset() {
*x = SubmitBlockRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubmitBlockRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubmitBlockRequestMessage) ProtoMessage() {}
func (x *SubmitBlockRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[33]
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 SubmitBlockRequestMessage.ProtoReflect.Descriptor instead.
func (*SubmitBlockRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{33}
}
func (x *SubmitBlockRequestMessage) GetBlock() *BlockMessage {
if x != nil {
return x.Block
}
return nil
}
type SubmitBlockResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *SubmitBlockResponseMessage) Reset() {
*x = SubmitBlockResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubmitBlockResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubmitBlockResponseMessage) ProtoMessage() {}
func (x *SubmitBlockResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[34]
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 SubmitBlockResponseMessage.ProtoReflect.Descriptor instead.
func (*SubmitBlockResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{34}
}
func (x *SubmitBlockResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetBlockTemplateRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
PayAddress string `protobuf:"bytes,1,opt,name=payAddress,proto3" json:"payAddress,omitempty"`
}
func (x *GetBlockTemplateRequestMessage) Reset() {
*x = GetBlockTemplateRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockTemplateRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockTemplateRequestMessage) ProtoMessage() {}
func (x *GetBlockTemplateRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[35]
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 GetBlockTemplateRequestMessage.ProtoReflect.Descriptor instead.
func (*GetBlockTemplateRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{35}
}
func (x *GetBlockTemplateRequestMessage) GetPayAddress() string {
if x != nil {
return x.PayAddress
}
return ""
}
type GetBlockTemplateResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BlockMessage *BlockMessage `protobuf:"bytes,1,opt,name=blockMessage,proto3" json:"blockMessage,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetBlockTemplateResponseMessage) Reset() {
*x = GetBlockTemplateResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockTemplateResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockTemplateResponseMessage) ProtoMessage() {}
func (x *GetBlockTemplateResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[36]
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 GetBlockTemplateResponseMessage.ProtoReflect.Descriptor instead.
func (*GetBlockTemplateResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{36}
}
func (x *GetBlockTemplateResponseMessage) GetBlockMessage() *BlockMessage {
if x != nil {
return x.BlockMessage
}
return nil
}
func (x *GetBlockTemplateResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type NotifyBlockAddedRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *NotifyBlockAddedRequestMessage) Reset() {
*x = NotifyBlockAddedRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NotifyBlockAddedRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NotifyBlockAddedRequestMessage) ProtoMessage() {}
func (x *NotifyBlockAddedRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[37]
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 NotifyBlockAddedRequestMessage.ProtoReflect.Descriptor instead.
func (*NotifyBlockAddedRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{37}
}
type NotifyBlockAddedResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *NotifyBlockAddedResponseMessage) Reset() {
*x = NotifyBlockAddedResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NotifyBlockAddedResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NotifyBlockAddedResponseMessage) ProtoMessage() {}
func (x *NotifyBlockAddedResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[38]
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 NotifyBlockAddedResponseMessage.ProtoReflect.Descriptor instead.
func (*NotifyBlockAddedResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{38}
}
func (x *NotifyBlockAddedResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type BlockAddedNotificationMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Block *BlockMessage `protobuf:"bytes,1,opt,name=block,proto3" json:"block,omitempty"`
}
func (x *BlockAddedNotificationMessage) Reset() {
*x = BlockAddedNotificationMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BlockAddedNotificationMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BlockAddedNotificationMessage) ProtoMessage() {}
func (x *BlockAddedNotificationMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[39]
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 BlockAddedNotificationMessage.ProtoReflect.Descriptor instead.
func (*BlockAddedNotificationMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{39}
}
func (x *BlockAddedNotificationMessage) GetBlock() *BlockMessage {
if x != nil {
return x.Block
}
return nil
}
type GetPeerAddressesRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetPeerAddressesRequestMessage) Reset() {
*x = GetPeerAddressesRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetPeerAddressesRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetPeerAddressesRequestMessage) ProtoMessage() {}
func (x *GetPeerAddressesRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[40]
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 GetPeerAddressesRequestMessage.ProtoReflect.Descriptor instead.
func (*GetPeerAddressesRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{40}
}
type GetPeerAddressesResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Addresses []*GetPeerAddressesKnownAddressMessage `protobuf:"bytes,1,rep,name=addresses,proto3" json:"addresses,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetPeerAddressesResponseMessage) Reset() {
*x = GetPeerAddressesResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetPeerAddressesResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetPeerAddressesResponseMessage) ProtoMessage() {}
func (x *GetPeerAddressesResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[41]
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 GetPeerAddressesResponseMessage.ProtoReflect.Descriptor instead.
func (*GetPeerAddressesResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{41}
}
func (x *GetPeerAddressesResponseMessage) GetAddresses() []*GetPeerAddressesKnownAddressMessage {
if x != nil {
return x.Addresses
}
return nil
}
func (x *GetPeerAddressesResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetPeerAddressesKnownAddressMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Addr string `protobuf:"bytes,1,opt,name=Addr,proto3" json:"Addr,omitempty"`
}
func (x *GetPeerAddressesKnownAddressMessage) Reset() {
*x = GetPeerAddressesKnownAddressMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetPeerAddressesKnownAddressMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetPeerAddressesKnownAddressMessage) ProtoMessage() {}
func (x *GetPeerAddressesKnownAddressMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[42]
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 GetPeerAddressesKnownAddressMessage.ProtoReflect.Descriptor instead.
func (*GetPeerAddressesKnownAddressMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{42}
}
func (x *GetPeerAddressesKnownAddressMessage) GetAddr() string {
if x != nil {
return x.Addr
}
return ""
}
type GetSelectedTipHashRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetSelectedTipHashRequestMessage) Reset() {
*x = GetSelectedTipHashRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetSelectedTipHashRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetSelectedTipHashRequestMessage) ProtoMessage() {}
func (x *GetSelectedTipHashRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[43]
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 GetSelectedTipHashRequestMessage.ProtoReflect.Descriptor instead.
func (*GetSelectedTipHashRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{43}
}
type GetSelectedTipHashResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SelectedTipHash string `protobuf:"bytes,1,opt,name=selectedTipHash,proto3" json:"selectedTipHash,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetSelectedTipHashResponseMessage) Reset() {
*x = GetSelectedTipHashResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetSelectedTipHashResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetSelectedTipHashResponseMessage) ProtoMessage() {}
func (x *GetSelectedTipHashResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[44]
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 GetSelectedTipHashResponseMessage.ProtoReflect.Descriptor instead.
func (*GetSelectedTipHashResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{44}
}
func (x *GetSelectedTipHashResponseMessage) GetSelectedTipHash() string {
if x != nil {
return x.SelectedTipHash
}
return ""
}
func (x *GetSelectedTipHashResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
// mempool entries start
type MempoolEntry struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Fee uint64 `protobuf:"varint,1,opt,name=fee,proto3" json:"fee,omitempty"`
TransactionVerboseData *TransactionVerboseData `protobuf:"bytes,2,opt,name=transactionVerboseData,proto3" json:"transactionVerboseData,omitempty"`
}
func (x *MempoolEntry) Reset() {
*x = MempoolEntry{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MempoolEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MempoolEntry) ProtoMessage() {}
func (x *MempoolEntry) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[45]
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 MempoolEntry.ProtoReflect.Descriptor instead.
func (*MempoolEntry) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{45}
}
func (x *MempoolEntry) GetFee() uint64 {
if x != nil {
return x.Fee
}
return 0
}
func (x *MempoolEntry) GetTransactionVerboseData() *TransactionVerboseData {
if x != nil {
return x.TransactionVerboseData
}
return nil
}
type GetMempoolEntryRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TxId string `protobuf:"bytes,1,opt,name=txId,proto3" json:"txId,omitempty"`
}
func (x *GetMempoolEntryRequestMessage) Reset() {
*x = GetMempoolEntryRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetMempoolEntryRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetMempoolEntryRequestMessage) ProtoMessage() {}
func (x *GetMempoolEntryRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[46]
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 GetMempoolEntryRequestMessage.ProtoReflect.Descriptor instead.
func (*GetMempoolEntryRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{46}
}
func (x *GetMempoolEntryRequestMessage) GetTxId() string {
if x != nil {
return x.TxId
}
return ""
}
type GetMempoolEntryResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Entry *MempoolEntry `protobuf:"bytes,1,opt,name=entry,proto3" json:"entry,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetMempoolEntryResponseMessage) Reset() {
*x = GetMempoolEntryResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetMempoolEntryResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetMempoolEntryResponseMessage) ProtoMessage() {}
func (x *GetMempoolEntryResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[47]
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 GetMempoolEntryResponseMessage.ProtoReflect.Descriptor instead.
func (*GetMempoolEntryResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{47}
}
func (x *GetMempoolEntryResponseMessage) GetEntry() *MempoolEntry {
if x != nil {
return x.Entry
}
return nil
}
func (x *GetMempoolEntryResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetMempoolEntriesRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetMempoolEntriesRequestMessage) Reset() {
*x = GetMempoolEntriesRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetMempoolEntriesRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetMempoolEntriesRequestMessage) ProtoMessage() {}
func (x *GetMempoolEntriesRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[48]
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 GetMempoolEntriesRequestMessage.ProtoReflect.Descriptor instead.
func (*GetMempoolEntriesRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{48}
}
type GetMempoolEntriesResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Entries []*MempoolEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetMempoolEntriesResponseMessage) Reset() {
*x = GetMempoolEntriesResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetMempoolEntriesResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetMempoolEntriesResponseMessage) ProtoMessage() {}
func (x *GetMempoolEntriesResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[49]
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 GetMempoolEntriesResponseMessage.ProtoReflect.Descriptor instead.
func (*GetMempoolEntriesResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{49}
}
func (x *GetMempoolEntriesResponseMessage) GetEntries() []*MempoolEntry {
if x != nil {
return x.Entries
}
return nil
}
func (x *GetMempoolEntriesResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetConnectedPeerInfoRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetConnectedPeerInfoRequestMessage) Reset() {
*x = GetConnectedPeerInfoRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetConnectedPeerInfoRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetConnectedPeerInfoRequestMessage) ProtoMessage() {}
func (x *GetConnectedPeerInfoRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[50]
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 GetConnectedPeerInfoRequestMessage.ProtoReflect.Descriptor instead.
func (*GetConnectedPeerInfoRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{50}
}
type GetConnectedPeerInfoResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Infos []*GetConnectedPeerInfoMessage `protobuf:"bytes,1,rep,name=infos,proto3" json:"infos,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetConnectedPeerInfoResponseMessage) Reset() {
*x = GetConnectedPeerInfoResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetConnectedPeerInfoResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetConnectedPeerInfoResponseMessage) ProtoMessage() {}
func (x *GetConnectedPeerInfoResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[51]
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 GetConnectedPeerInfoResponseMessage.ProtoReflect.Descriptor instead.
func (*GetConnectedPeerInfoResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{51}
}
func (x *GetConnectedPeerInfoResponseMessage) GetInfos() []*GetConnectedPeerInfoMessage {
if x != nil {
return x.Infos
}
return nil
}
func (x *GetConnectedPeerInfoResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetConnectedPeerInfoMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
LastPingDuration int64 `protobuf:"varint,3,opt,name=lastPingDuration,proto3" json:"lastPingDuration,omitempty"`
SelectedTipHash string `protobuf:"bytes,4,opt,name=selectedTipHash,proto3" json:"selectedTipHash,omitempty"`
IsSyncNode bool `protobuf:"varint,5,opt,name=isSyncNode,proto3" json:"isSyncNode,omitempty"`
IsOutbound bool `protobuf:"varint,6,opt,name=isOutbound,proto3" json:"isOutbound,omitempty"`
TimeOffset int64 `protobuf:"varint,7,opt,name=timeOffset,proto3" json:"timeOffset,omitempty"`
UserAgent string `protobuf:"bytes,8,opt,name=userAgent,proto3" json:"userAgent,omitempty"`
AdvertisedProtocolVersion uint32 `protobuf:"varint,9,opt,name=advertisedProtocolVersion,proto3" json:"advertisedProtocolVersion,omitempty"`
TimeConnected int64 `protobuf:"varint,10,opt,name=timeConnected,proto3" json:"timeConnected,omitempty"`
}
func (x *GetConnectedPeerInfoMessage) Reset() {
*x = GetConnectedPeerInfoMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetConnectedPeerInfoMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetConnectedPeerInfoMessage) ProtoMessage() {}
func (x *GetConnectedPeerInfoMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[52]
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 GetConnectedPeerInfoMessage.ProtoReflect.Descriptor instead.
func (*GetConnectedPeerInfoMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{52}
}
func (x *GetConnectedPeerInfoMessage) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *GetConnectedPeerInfoMessage) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
func (x *GetConnectedPeerInfoMessage) GetLastPingDuration() int64 {
if x != nil {
return x.LastPingDuration
}
return 0
}
func (x *GetConnectedPeerInfoMessage) GetSelectedTipHash() string {
if x != nil {
return x.SelectedTipHash
}
return ""
}
func (x *GetConnectedPeerInfoMessage) GetIsSyncNode() bool {
if x != nil {
return x.IsSyncNode
}
return false
}
func (x *GetConnectedPeerInfoMessage) GetIsOutbound() bool {
if x != nil {
return x.IsOutbound
}
return false
}
func (x *GetConnectedPeerInfoMessage) GetTimeOffset() int64 {
if x != nil {
return x.TimeOffset
}
return 0
}
func (x *GetConnectedPeerInfoMessage) GetUserAgent() string {
if x != nil {
return x.UserAgent
}
return ""
}
func (x *GetConnectedPeerInfoMessage) GetAdvertisedProtocolVersion() uint32 {
if x != nil {
return x.AdvertisedProtocolVersion
}
return 0
}
func (x *GetConnectedPeerInfoMessage) GetTimeConnected() int64 {
if x != nil {
return x.TimeConnected
}
return 0
}
type AddPeerRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
IsPermanent bool `protobuf:"varint,2,opt,name=isPermanent,proto3" json:"isPermanent,omitempty"`
}
func (x *AddPeerRequestMessage) Reset() {
*x = AddPeerRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddPeerRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddPeerRequestMessage) ProtoMessage() {}
func (x *AddPeerRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[53]
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 AddPeerRequestMessage.ProtoReflect.Descriptor instead.
func (*AddPeerRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{53}
}
func (x *AddPeerRequestMessage) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
func (x *AddPeerRequestMessage) GetIsPermanent() bool {
if x != nil {
return x.IsPermanent
}
return false
}
type AddPeerResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *AddPeerResponseMessage) Reset() {
*x = AddPeerResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[54]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddPeerResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddPeerResponseMessage) ProtoMessage() {}
func (x *AddPeerResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[54]
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 AddPeerResponseMessage.ProtoReflect.Descriptor instead.
func (*AddPeerResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{54}
}
func (x *AddPeerResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type SubmitTransactionRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TransactionMessage *TransactionMessage `protobuf:"bytes,1,opt,name=transactionMessage,proto3" json:"transactionMessage,omitempty"`
}
func (x *SubmitTransactionRequestMessage) Reset() {
*x = SubmitTransactionRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubmitTransactionRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubmitTransactionRequestMessage) ProtoMessage() {}
func (x *SubmitTransactionRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[55]
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 SubmitTransactionRequestMessage.ProtoReflect.Descriptor instead.
func (*SubmitTransactionRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{55}
}
func (x *SubmitTransactionRequestMessage) GetTransactionMessage() *TransactionMessage {
if x != nil {
return x.TransactionMessage
}
return nil
}
type SubmitTransactionResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TxId string `protobuf:"bytes,1,opt,name=txId,proto3" json:"txId,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *SubmitTransactionResponseMessage) Reset() {
*x = SubmitTransactionResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[56]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SubmitTransactionResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SubmitTransactionResponseMessage) ProtoMessage() {}
func (x *SubmitTransactionResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[56]
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 SubmitTransactionResponseMessage.ProtoReflect.Descriptor instead.
func (*SubmitTransactionResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{56}
}
func (x *SubmitTransactionResponseMessage) GetTxId() string {
if x != nil {
return x.TxId
}
return ""
}
func (x *SubmitTransactionResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type NotifyChainChangedRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *NotifyChainChangedRequestMessage) Reset() {
*x = NotifyChainChangedRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[57]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NotifyChainChangedRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NotifyChainChangedRequestMessage) ProtoMessage() {}
func (x *NotifyChainChangedRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[57]
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 NotifyChainChangedRequestMessage.ProtoReflect.Descriptor instead.
func (*NotifyChainChangedRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{57}
}
type NotifyChainChangedResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *NotifyChainChangedResponseMessage) Reset() {
*x = NotifyChainChangedResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NotifyChainChangedResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NotifyChainChangedResponseMessage) ProtoMessage() {}
func (x *NotifyChainChangedResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[58]
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 NotifyChainChangedResponseMessage.ProtoReflect.Descriptor instead.
func (*NotifyChainChangedResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{58}
}
func (x *NotifyChainChangedResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type ChainChangedNotificationMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
RemovedChainBlockHashes []string `protobuf:"bytes,1,rep,name=removedChainBlockHashes,proto3" json:"removedChainBlockHashes,omitempty"`
AddedChainBlocks []*ChainBlock `protobuf:"bytes,2,rep,name=addedChainBlocks,proto3" json:"addedChainBlocks,omitempty"`
}
func (x *ChainChangedNotificationMessage) Reset() {
*x = ChainChangedNotificationMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[59]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChainChangedNotificationMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ChainChangedNotificationMessage) ProtoMessage() {}
func (x *ChainChangedNotificationMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[59]
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 ChainChangedNotificationMessage.ProtoReflect.Descriptor instead.
func (*ChainChangedNotificationMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{59}
}
func (x *ChainChangedNotificationMessage) GetRemovedChainBlockHashes() []string {
if x != nil {
return x.RemovedChainBlockHashes
}
return nil
}
func (x *ChainChangedNotificationMessage) GetAddedChainBlocks() []*ChainBlock {
if x != nil {
return x.AddedChainBlocks
}
return nil
}
type ChainBlock struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
AcceptedBlocks []*AcceptedBlock `protobuf:"bytes,2,rep,name=acceptedBlocks,proto3" json:"acceptedBlocks,omitempty"`
}
func (x *ChainBlock) Reset() {
*x = ChainBlock{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChainBlock) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ChainBlock) ProtoMessage() {}
func (x *ChainBlock) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[60]
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 ChainBlock.ProtoReflect.Descriptor instead.
func (*ChainBlock) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{60}
}
func (x *ChainBlock) GetHash() string {
if x != nil {
return x.Hash
}
return ""
}
func (x *ChainBlock) GetAcceptedBlocks() []*AcceptedBlock {
if x != nil {
return x.AcceptedBlocks
}
return nil
}
type AcceptedBlock struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
AcceptedTxIds []string `protobuf:"bytes,2,rep,name=acceptedTxIds,proto3" json:"acceptedTxIds,omitempty"`
}
func (x *AcceptedBlock) Reset() {
*x = AcceptedBlock{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[61]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AcceptedBlock) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AcceptedBlock) ProtoMessage() {}
func (x *AcceptedBlock) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[61]
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 AcceptedBlock.ProtoReflect.Descriptor instead.
func (*AcceptedBlock) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{61}
}
func (x *AcceptedBlock) GetHash() string {
if x != nil {
return x.Hash
}
return ""
}
func (x *AcceptedBlock) GetAcceptedTxIds() []string {
if x != nil {
return x.AcceptedTxIds
}
return nil
}
type GetBlockRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
SubnetworkId string `protobuf:"bytes,2,opt,name=subnetworkId,proto3" json:"subnetworkId,omitempty"`
IncludeTransactionVerboseData bool `protobuf:"varint,3,opt,name=includeTransactionVerboseData,proto3" json:"includeTransactionVerboseData,omitempty"`
}
func (x *GetBlockRequestMessage) Reset() {
*x = GetBlockRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[62]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockRequestMessage) ProtoMessage() {}
func (x *GetBlockRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[62]
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 GetBlockRequestMessage.ProtoReflect.Descriptor instead.
func (*GetBlockRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{62}
}
func (x *GetBlockRequestMessage) GetHash() string {
if x != nil {
return x.Hash
}
return ""
}
func (x *GetBlockRequestMessage) GetSubnetworkId() string {
if x != nil {
return x.SubnetworkId
}
return ""
}
func (x *GetBlockRequestMessage) GetIncludeTransactionVerboseData() bool {
if x != nil {
return x.IncludeTransactionVerboseData
}
return false
}
type GetBlockResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BlockHash string `protobuf:"bytes,1,opt,name=blockHash,proto3" json:"blockHash,omitempty"`
BlockVerboseData *BlockVerboseData `protobuf:"bytes,2,opt,name=blockVerboseData,proto3" json:"blockVerboseData,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetBlockResponseMessage) Reset() {
*x = GetBlockResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[63]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockResponseMessage) ProtoMessage() {}
func (x *GetBlockResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[63]
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 GetBlockResponseMessage.ProtoReflect.Descriptor instead.
func (*GetBlockResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{63}
}
func (x *GetBlockResponseMessage) GetBlockHash() string {
if x != nil {
return x.BlockHash
}
return ""
}
func (x *GetBlockResponseMessage) GetBlockVerboseData() *BlockVerboseData {
if x != nil {
return x.BlockVerboseData
}
return nil
}
func (x *GetBlockResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type BlockVerboseData struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
Version int32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
VersionHex string `protobuf:"bytes,3,opt,name=versionHex,proto3" json:"versionHex,omitempty"`
HashMerkleRoot string `protobuf:"bytes,4,opt,name=hashMerkleRoot,proto3" json:"hashMerkleRoot,omitempty"`
AcceptedIDMerkleRoot string `protobuf:"bytes,5,opt,name=acceptedIDMerkleRoot,proto3" json:"acceptedIDMerkleRoot,omitempty"`
UtxoCommitment string `protobuf:"bytes,6,opt,name=utxoCommitment,proto3" json:"utxoCommitment,omitempty"`
TransactionVerboseData []*TransactionVerboseData `protobuf:"bytes,7,rep,name=transactionVerboseData,proto3" json:"transactionVerboseData,omitempty"`
Time int64 `protobuf:"varint,8,opt,name=time,proto3" json:"time,omitempty"`
Nonce uint64 `protobuf:"varint,9,opt,name=nonce,proto3" json:"nonce,omitempty"`
Bits string `protobuf:"bytes,10,opt,name=bits,proto3" json:"bits,omitempty"`
Difficulty float64 `protobuf:"fixed64,11,opt,name=difficulty,proto3" json:"difficulty,omitempty"`
ParentHashes []string `protobuf:"bytes,12,rep,name=parentHashes,proto3" json:"parentHashes,omitempty"`
SelectedParentHash string `protobuf:"bytes,13,opt,name=selectedParentHash,proto3" json:"selectedParentHash,omitempty"`
TransactionIDs []string `protobuf:"bytes,14,rep,name=transactionIDs,proto3" json:"transactionIDs,omitempty"`
}
func (x *BlockVerboseData) Reset() {
*x = BlockVerboseData{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[64]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BlockVerboseData) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BlockVerboseData) ProtoMessage() {}
func (x *BlockVerboseData) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[64]
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 BlockVerboseData.ProtoReflect.Descriptor instead.
func (*BlockVerboseData) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{64}
}
func (x *BlockVerboseData) GetHash() string {
if x != nil {
return x.Hash
}
return ""
}
func (x *BlockVerboseData) GetVersion() int32 {
if x != nil {
return x.Version
}
return 0
}
func (x *BlockVerboseData) GetVersionHex() string {
if x != nil {
return x.VersionHex
}
return ""
}
func (x *BlockVerboseData) GetHashMerkleRoot() string {
if x != nil {
return x.HashMerkleRoot
}
return ""
}
func (x *BlockVerboseData) GetAcceptedIDMerkleRoot() string {
if x != nil {
return x.AcceptedIDMerkleRoot
}
return ""
}
func (x *BlockVerboseData) GetUtxoCommitment() string {
if x != nil {
return x.UtxoCommitment
}
return ""
}
func (x *BlockVerboseData) GetTransactionVerboseData() []*TransactionVerboseData {
if x != nil {
return x.TransactionVerboseData
}
return nil
}
func (x *BlockVerboseData) GetTime() int64 {
if x != nil {
return x.Time
}
return 0
}
func (x *BlockVerboseData) GetNonce() uint64 {
if x != nil {
return x.Nonce
}
return 0
}
func (x *BlockVerboseData) GetBits() string {
if x != nil {
return x.Bits
}
return ""
}
func (x *BlockVerboseData) GetDifficulty() float64 {
if x != nil {
return x.Difficulty
}
return 0
}
func (x *BlockVerboseData) GetParentHashes() []string {
if x != nil {
return x.ParentHashes
}
return nil
}
func (x *BlockVerboseData) GetSelectedParentHash() string {
if x != nil {
return x.SelectedParentHash
}
return ""
}
func (x *BlockVerboseData) GetTransactionIDs() []string {
if x != nil {
return x.TransactionIDs
}
return nil
}
type TransactionVerboseData struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TxId string `protobuf:"bytes,1,opt,name=txId,proto3" json:"txId,omitempty"`
Hash string `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"`
Size uint64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
Version int32 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"`
LockTime uint64 `protobuf:"varint,5,opt,name=lockTime,proto3" json:"lockTime,omitempty"`
SubnetworkId string `protobuf:"bytes,6,opt,name=subnetworkId,proto3" json:"subnetworkId,omitempty"`
Gas uint64 `protobuf:"varint,7,opt,name=gas,proto3" json:"gas,omitempty"`
PayloadHash string `protobuf:"bytes,8,opt,name=payloadHash,proto3" json:"payloadHash,omitempty"`
Payload string `protobuf:"bytes,9,opt,name=payload,proto3" json:"payload,omitempty"`
TransactionVerboseInputs []*TransactionVerboseInput `protobuf:"bytes,10,rep,name=transactionVerboseInputs,proto3" json:"transactionVerboseInputs,omitempty"`
TransactionVerboseOutputs []*TransactionVerboseOutput `protobuf:"bytes,11,rep,name=transactionVerboseOutputs,proto3" json:"transactionVerboseOutputs,omitempty"`
BlockHash string `protobuf:"bytes,12,opt,name=blockHash,proto3" json:"blockHash,omitempty"`
Time uint64 `protobuf:"varint,13,opt,name=time,proto3" json:"time,omitempty"`
BlockTime uint64 `protobuf:"varint,14,opt,name=blockTime,proto3" json:"blockTime,omitempty"`
}
func (x *TransactionVerboseData) Reset() {
*x = TransactionVerboseData{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionVerboseData) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionVerboseData) ProtoMessage() {}
func (x *TransactionVerboseData) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[65]
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 TransactionVerboseData.ProtoReflect.Descriptor instead.
func (*TransactionVerboseData) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{65}
}
func (x *TransactionVerboseData) GetTxId() string {
if x != nil {
return x.TxId
}
return ""
}
func (x *TransactionVerboseData) GetHash() string {
if x != nil {
return x.Hash
}
return ""
}
func (x *TransactionVerboseData) GetSize() uint64 {
if x != nil {
return x.Size
}
return 0
}
func (x *TransactionVerboseData) GetVersion() int32 {
if x != nil {
return x.Version
}
return 0
}
func (x *TransactionVerboseData) GetLockTime() uint64 {
if x != nil {
return x.LockTime
}
return 0
}
func (x *TransactionVerboseData) GetSubnetworkId() string {
if x != nil {
return x.SubnetworkId
}
return ""
}
func (x *TransactionVerboseData) GetGas() uint64 {
if x != nil {
return x.Gas
}
return 0
}
func (x *TransactionVerboseData) GetPayloadHash() string {
if x != nil {
return x.PayloadHash
}
return ""
}
func (x *TransactionVerboseData) GetPayload() string {
if x != nil {
return x.Payload
}
return ""
}
func (x *TransactionVerboseData) GetTransactionVerboseInputs() []*TransactionVerboseInput {
if x != nil {
return x.TransactionVerboseInputs
}
return nil
}
func (x *TransactionVerboseData) GetTransactionVerboseOutputs() []*TransactionVerboseOutput {
if x != nil {
return x.TransactionVerboseOutputs
}
return nil
}
func (x *TransactionVerboseData) GetBlockHash() string {
if x != nil {
return x.BlockHash
}
return ""
}
func (x *TransactionVerboseData) GetTime() uint64 {
if x != nil {
return x.Time
}
return 0
}
func (x *TransactionVerboseData) GetBlockTime() uint64 {
if x != nil {
return x.BlockTime
}
return 0
}
type TransactionVerboseInput struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TxId string `protobuf:"bytes,1,opt,name=txId,proto3" json:"txId,omitempty"`
OutputIndex uint32 `protobuf:"varint,2,opt,name=outputIndex,proto3" json:"outputIndex,omitempty"`
ScriptSig *ScriptSig `protobuf:"bytes,3,opt,name=scriptSig,proto3" json:"scriptSig,omitempty"`
Sequence uint64 `protobuf:"varint,4,opt,name=sequence,proto3" json:"sequence,omitempty"`
}
func (x *TransactionVerboseInput) Reset() {
*x = TransactionVerboseInput{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionVerboseInput) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionVerboseInput) ProtoMessage() {}
func (x *TransactionVerboseInput) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[66]
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 TransactionVerboseInput.ProtoReflect.Descriptor instead.
func (*TransactionVerboseInput) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{66}
}
func (x *TransactionVerboseInput) GetTxId() string {
if x != nil {
return x.TxId
}
return ""
}
func (x *TransactionVerboseInput) GetOutputIndex() uint32 {
if x != nil {
return x.OutputIndex
}
return 0
}
func (x *TransactionVerboseInput) GetScriptSig() *ScriptSig {
if x != nil {
return x.ScriptSig
}
return nil
}
func (x *TransactionVerboseInput) GetSequence() uint64 {
if x != nil {
return x.Sequence
}
return 0
}
type ScriptSig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Asm string `protobuf:"bytes,1,opt,name=asm,proto3" json:"asm,omitempty"`
Hex string `protobuf:"bytes,2,opt,name=hex,proto3" json:"hex,omitempty"`
}
func (x *ScriptSig) Reset() {
*x = ScriptSig{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[67]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ScriptSig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ScriptSig) ProtoMessage() {}
func (x *ScriptSig) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[67]
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 ScriptSig.ProtoReflect.Descriptor instead.
func (*ScriptSig) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{67}
}
func (x *ScriptSig) GetAsm() string {
if x != nil {
return x.Asm
}
return ""
}
func (x *ScriptSig) GetHex() string {
if x != nil {
return x.Hex
}
return ""
}
type TransactionVerboseOutput struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Value uint64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
Index uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
ScriptPubKey *ScriptPubKeyResult `protobuf:"bytes,3,opt,name=scriptPubKey,proto3" json:"scriptPubKey,omitempty"`
}
func (x *TransactionVerboseOutput) Reset() {
*x = TransactionVerboseOutput{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[68]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TransactionVerboseOutput) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TransactionVerboseOutput) ProtoMessage() {}
func (x *TransactionVerboseOutput) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[68]
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 TransactionVerboseOutput.ProtoReflect.Descriptor instead.
func (*TransactionVerboseOutput) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{68}
}
func (x *TransactionVerboseOutput) GetValue() uint64 {
if x != nil {
return x.Value
}
return 0
}
func (x *TransactionVerboseOutput) GetIndex() uint32 {
if x != nil {
return x.Index
}
return 0
}
func (x *TransactionVerboseOutput) GetScriptPubKey() *ScriptPubKeyResult {
if x != nil {
return x.ScriptPubKey
}
return nil
}
type ScriptPubKeyResult struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Asm string `protobuf:"bytes,1,opt,name=asm,proto3" json:"asm,omitempty"`
Hex string `protobuf:"bytes,2,opt,name=hex,proto3" json:"hex,omitempty"`
Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
Address string `protobuf:"bytes,4,opt,name=address,proto3" json:"address,omitempty"`
}
func (x *ScriptPubKeyResult) Reset() {
*x = ScriptPubKeyResult{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[69]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ScriptPubKeyResult) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ScriptPubKeyResult) ProtoMessage() {}
func (x *ScriptPubKeyResult) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[69]
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 ScriptPubKeyResult.ProtoReflect.Descriptor instead.
func (*ScriptPubKeyResult) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{69}
}
func (x *ScriptPubKeyResult) GetAsm() string {
if x != nil {
return x.Asm
}
return ""
}
func (x *ScriptPubKeyResult) GetHex() string {
if x != nil {
return x.Hex
}
return ""
}
func (x *ScriptPubKeyResult) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *ScriptPubKeyResult) GetAddress() string {
if x != nil {
return x.Address
}
return ""
}
type GetSubnetworkRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SubnetworkId string `protobuf:"bytes,1,opt,name=subnetworkId,proto3" json:"subnetworkId,omitempty"`
}
func (x *GetSubnetworkRequestMessage) Reset() {
*x = GetSubnetworkRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[70]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetSubnetworkRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetSubnetworkRequestMessage) ProtoMessage() {}
func (x *GetSubnetworkRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[70]
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 GetSubnetworkRequestMessage.ProtoReflect.Descriptor instead.
func (*GetSubnetworkRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{70}
}
func (x *GetSubnetworkRequestMessage) GetSubnetworkId() string {
if x != nil {
return x.SubnetworkId
}
return ""
}
type GetSubnetworkResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
GasLimit uint64 `protobuf:"varint,1,opt,name=gasLimit,proto3" json:"gasLimit,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetSubnetworkResponseMessage) Reset() {
*x = GetSubnetworkResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[71]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetSubnetworkResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetSubnetworkResponseMessage) ProtoMessage() {}
func (x *GetSubnetworkResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[71]
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 GetSubnetworkResponseMessage.ProtoReflect.Descriptor instead.
func (*GetSubnetworkResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{71}
}
func (x *GetSubnetworkResponseMessage) GetGasLimit() uint64 {
if x != nil {
return x.GasLimit
}
return 0
}
func (x *GetSubnetworkResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetChainFromBlockRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
StartHash string `protobuf:"bytes,1,opt,name=startHash,proto3" json:"startHash,omitempty"`
IncludeBlockVerboseData bool `protobuf:"varint,2,opt,name=includeBlockVerboseData,proto3" json:"includeBlockVerboseData,omitempty"`
}
func (x *GetChainFromBlockRequestMessage) Reset() {
*x = GetChainFromBlockRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[72]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetChainFromBlockRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetChainFromBlockRequestMessage) ProtoMessage() {}
func (x *GetChainFromBlockRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[72]
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 GetChainFromBlockRequestMessage.ProtoReflect.Descriptor instead.
func (*GetChainFromBlockRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{72}
}
func (x *GetChainFromBlockRequestMessage) GetStartHash() string {
if x != nil {
return x.StartHash
}
return ""
}
func (x *GetChainFromBlockRequestMessage) GetIncludeBlockVerboseData() bool {
if x != nil {
return x.IncludeBlockVerboseData
}
return false
}
type GetChainFromBlockResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
RemovedChainBlockHashes []string `protobuf:"bytes,1,rep,name=removedChainBlockHashes,proto3" json:"removedChainBlockHashes,omitempty"`
AddedChainBlocks []*ChainBlock `protobuf:"bytes,2,rep,name=addedChainBlocks,proto3" json:"addedChainBlocks,omitempty"`
BlockVerboseData []*BlockVerboseData `protobuf:"bytes,3,rep,name=blockVerboseData,proto3" json:"blockVerboseData,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetChainFromBlockResponseMessage) Reset() {
*x = GetChainFromBlockResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[73]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetChainFromBlockResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetChainFromBlockResponseMessage) ProtoMessage() {}
func (x *GetChainFromBlockResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[73]
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 GetChainFromBlockResponseMessage.ProtoReflect.Descriptor instead.
func (*GetChainFromBlockResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{73}
}
func (x *GetChainFromBlockResponseMessage) GetRemovedChainBlockHashes() []string {
if x != nil {
return x.RemovedChainBlockHashes
}
return nil
}
func (x *GetChainFromBlockResponseMessage) GetAddedChainBlocks() []*ChainBlock {
if x != nil {
return x.AddedChainBlocks
}
return nil
}
func (x *GetChainFromBlockResponseMessage) GetBlockVerboseData() []*BlockVerboseData {
if x != nil {
return x.BlockVerboseData
}
return nil
}
func (x *GetChainFromBlockResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetBlocksRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
LowHash string `protobuf:"bytes,1,opt,name=lowHash,proto3" json:"lowHash,omitempty"`
IncludeBlockHexes bool `protobuf:"varint,2,opt,name=includeBlockHexes,proto3" json:"includeBlockHexes,omitempty"`
IncludeBlockVerboseData bool `protobuf:"varint,3,opt,name=includeBlockVerboseData,proto3" json:"includeBlockVerboseData,omitempty"`
IncludeTransactionVerboseData bool `protobuf:"varint,4,opt,name=includeTransactionVerboseData,proto3" json:"includeTransactionVerboseData,omitempty"`
}
func (x *GetBlocksRequestMessage) Reset() {
*x = GetBlocksRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlocksRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlocksRequestMessage) ProtoMessage() {}
func (x *GetBlocksRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[74]
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 GetBlocksRequestMessage.ProtoReflect.Descriptor instead.
func (*GetBlocksRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{74}
}
func (x *GetBlocksRequestMessage) GetLowHash() string {
if x != nil {
return x.LowHash
}
return ""
}
func (x *GetBlocksRequestMessage) GetIncludeBlockHexes() bool {
if x != nil {
return x.IncludeBlockHexes
}
return false
}
func (x *GetBlocksRequestMessage) GetIncludeBlockVerboseData() bool {
if x != nil {
return x.IncludeBlockVerboseData
}
return false
}
func (x *GetBlocksRequestMessage) GetIncludeTransactionVerboseData() bool {
if x != nil {
return x.IncludeTransactionVerboseData
}
return false
}
type GetBlocksResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BlockHashes []string `protobuf:"bytes,1,rep,name=blockHashes,proto3" json:"blockHashes,omitempty"`
BlockHexes []string `protobuf:"bytes,2,rep,name=blockHexes,proto3" json:"blockHexes,omitempty"`
BlockVerboseData []*BlockVerboseData `protobuf:"bytes,3,rep,name=blockVerboseData,proto3" json:"blockVerboseData,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetBlocksResponseMessage) Reset() {
*x = GetBlocksResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[75]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlocksResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlocksResponseMessage) ProtoMessage() {}
func (x *GetBlocksResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[75]
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 GetBlocksResponseMessage.ProtoReflect.Descriptor instead.
func (*GetBlocksResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{75}
}
func (x *GetBlocksResponseMessage) GetBlockHashes() []string {
if x != nil {
return x.BlockHashes
}
return nil
}
func (x *GetBlocksResponseMessage) GetBlockHexes() []string {
if x != nil {
return x.BlockHexes
}
return nil
}
func (x *GetBlocksResponseMessage) GetBlockVerboseData() []*BlockVerboseData {
if x != nil {
return x.BlockVerboseData
}
return nil
}
func (x *GetBlocksResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetBlockCountRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetBlockCountRequestMessage) Reset() {
*x = GetBlockCountRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[76]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockCountRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockCountRequestMessage) ProtoMessage() {}
func (x *GetBlockCountRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[76]
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 GetBlockCountRequestMessage.ProtoReflect.Descriptor instead.
func (*GetBlockCountRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{76}
}
type GetBlockCountResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BlockCount uint64 `protobuf:"varint,1,opt,name=blockCount,proto3" json:"blockCount,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetBlockCountResponseMessage) Reset() {
*x = GetBlockCountResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[77]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockCountResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockCountResponseMessage) ProtoMessage() {}
func (x *GetBlockCountResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[77]
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 GetBlockCountResponseMessage.ProtoReflect.Descriptor instead.
func (*GetBlockCountResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{77}
}
func (x *GetBlockCountResponseMessage) GetBlockCount() uint64 {
if x != nil {
return x.BlockCount
}
return 0
}
func (x *GetBlockCountResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetBlockDagInfoRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetBlockDagInfoRequestMessage) Reset() {
*x = GetBlockDagInfoRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[78]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockDagInfoRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockDagInfoRequestMessage) ProtoMessage() {}
func (x *GetBlockDagInfoRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[78]
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 GetBlockDagInfoRequestMessage.ProtoReflect.Descriptor instead.
func (*GetBlockDagInfoRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{78}
}
type GetBlockDagInfoResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
NetworkName string `protobuf:"bytes,1,opt,name=networkName,proto3" json:"networkName,omitempty"`
BlockCount uint64 `protobuf:"varint,2,opt,name=blockCount,proto3" json:"blockCount,omitempty"`
TipHashes []string `protobuf:"bytes,3,rep,name=tipHashes,proto3" json:"tipHashes,omitempty"`
Difficulty float64 `protobuf:"fixed64,4,opt,name=difficulty,proto3" json:"difficulty,omitempty"`
PastMedianTime int64 `protobuf:"varint,5,opt,name=pastMedianTime,proto3" json:"pastMedianTime,omitempty"`
VirtualParentHashes []string `protobuf:"bytes,6,rep,name=virtualParentHashes,proto3" json:"virtualParentHashes,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetBlockDagInfoResponseMessage) Reset() {
*x = GetBlockDagInfoResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[79]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBlockDagInfoResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBlockDagInfoResponseMessage) ProtoMessage() {}
func (x *GetBlockDagInfoResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[79]
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 GetBlockDagInfoResponseMessage.ProtoReflect.Descriptor instead.
func (*GetBlockDagInfoResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{79}
}
func (x *GetBlockDagInfoResponseMessage) GetNetworkName() string {
if x != nil {
return x.NetworkName
}
return ""
}
func (x *GetBlockDagInfoResponseMessage) GetBlockCount() uint64 {
if x != nil {
return x.BlockCount
}
return 0
}
func (x *GetBlockDagInfoResponseMessage) GetTipHashes() []string {
if x != nil {
return x.TipHashes
}
return nil
}
func (x *GetBlockDagInfoResponseMessage) GetDifficulty() float64 {
if x != nil {
return x.Difficulty
}
return 0
}
func (x *GetBlockDagInfoResponseMessage) GetPastMedianTime() int64 {
if x != nil {
return x.PastMedianTime
}
return 0
}
func (x *GetBlockDagInfoResponseMessage) GetVirtualParentHashes() []string {
if x != nil {
return x.VirtualParentHashes
}
return nil
}
func (x *GetBlockDagInfoResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type ResolveFinalityConflictRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FinalityBlockHash string `protobuf:"bytes,1,opt,name=finalityBlockHash,proto3" json:"finalityBlockHash,omitempty"`
}
func (x *ResolveFinalityConflictRequestMessage) Reset() {
*x = ResolveFinalityConflictRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[80]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResolveFinalityConflictRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResolveFinalityConflictRequestMessage) ProtoMessage() {}
func (x *ResolveFinalityConflictRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[80]
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 ResolveFinalityConflictRequestMessage.ProtoReflect.Descriptor instead.
func (*ResolveFinalityConflictRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{80}
}
func (x *ResolveFinalityConflictRequestMessage) GetFinalityBlockHash() string {
if x != nil {
return x.FinalityBlockHash
}
return ""
}
type ResolveFinalityConflictResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *ResolveFinalityConflictResponseMessage) Reset() {
*x = ResolveFinalityConflictResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[81]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResolveFinalityConflictResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResolveFinalityConflictResponseMessage) ProtoMessage() {}
func (x *ResolveFinalityConflictResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[81]
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 ResolveFinalityConflictResponseMessage.ProtoReflect.Descriptor instead.
func (*ResolveFinalityConflictResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{81}
}
func (x *ResolveFinalityConflictResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type NotifyFinalityConflictsRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *NotifyFinalityConflictsRequestMessage) Reset() {
*x = NotifyFinalityConflictsRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[82]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NotifyFinalityConflictsRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NotifyFinalityConflictsRequestMessage) ProtoMessage() {}
func (x *NotifyFinalityConflictsRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[82]
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 NotifyFinalityConflictsRequestMessage.ProtoReflect.Descriptor instead.
func (*NotifyFinalityConflictsRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{82}
}
type NotifyFinalityConflictsResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *NotifyFinalityConflictsResponseMessage) Reset() {
*x = NotifyFinalityConflictsResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[83]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NotifyFinalityConflictsResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NotifyFinalityConflictsResponseMessage) ProtoMessage() {}
func (x *NotifyFinalityConflictsResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[83]
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 NotifyFinalityConflictsResponseMessage.ProtoReflect.Descriptor instead.
func (*NotifyFinalityConflictsResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{83}
}
func (x *NotifyFinalityConflictsResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type FinalityConflictNotificationMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ViolatingBlockHash string `protobuf:"bytes,1,opt,name=violatingBlockHash,proto3" json:"violatingBlockHash,omitempty"`
}
func (x *FinalityConflictNotificationMessage) Reset() {
*x = FinalityConflictNotificationMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[84]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FinalityConflictNotificationMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FinalityConflictNotificationMessage) ProtoMessage() {}
func (x *FinalityConflictNotificationMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[84]
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 FinalityConflictNotificationMessage.ProtoReflect.Descriptor instead.
func (*FinalityConflictNotificationMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{84}
}
func (x *FinalityConflictNotificationMessage) GetViolatingBlockHash() string {
if x != nil {
return x.ViolatingBlockHash
}
return ""
}
type FinalityConflictResolvedNotificationMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FinalityBlockHash string `protobuf:"bytes,1,opt,name=finalityBlockHash,proto3" json:"finalityBlockHash,omitempty"`
}
func (x *FinalityConflictResolvedNotificationMessage) Reset() {
*x = FinalityConflictResolvedNotificationMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[85]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FinalityConflictResolvedNotificationMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FinalityConflictResolvedNotificationMessage) ProtoMessage() {}
func (x *FinalityConflictResolvedNotificationMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[85]
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 FinalityConflictResolvedNotificationMessage.ProtoReflect.Descriptor instead.
func (*FinalityConflictResolvedNotificationMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{85}
}
func (x *FinalityConflictResolvedNotificationMessage) GetFinalityBlockHash() string {
if x != nil {
return x.FinalityBlockHash
}
return ""
}
type ShutDownRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *ShutDownRequestMessage) Reset() {
*x = ShutDownRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[86]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ShutDownRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ShutDownRequestMessage) ProtoMessage() {}
func (x *ShutDownRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[86]
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 ShutDownRequestMessage.ProtoReflect.Descriptor instead.
func (*ShutDownRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{86}
}
type ShutDownResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *ShutDownResponseMessage) Reset() {
*x = ShutDownResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[87]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ShutDownResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ShutDownResponseMessage) ProtoMessage() {}
func (x *ShutDownResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[87]
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 ShutDownResponseMessage.ProtoReflect.Descriptor instead.
func (*ShutDownResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{87}
}
func (x *ShutDownResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
type GetHeadersRequestMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
StartHash string `protobuf:"bytes,1,opt,name=startHash,proto3" json:"startHash,omitempty"`
Limit uint64 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"`
IsAscending bool `protobuf:"varint,3,opt,name=isAscending,proto3" json:"isAscending,omitempty"`
}
func (x *GetHeadersRequestMessage) Reset() {
*x = GetHeadersRequestMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[88]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetHeadersRequestMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetHeadersRequestMessage) ProtoMessage() {}
func (x *GetHeadersRequestMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[88]
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 GetHeadersRequestMessage.ProtoReflect.Descriptor instead.
func (*GetHeadersRequestMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{88}
}
func (x *GetHeadersRequestMessage) GetStartHash() string {
if x != nil {
return x.StartHash
}
return ""
}
func (x *GetHeadersRequestMessage) GetLimit() uint64 {
if x != nil {
return x.Limit
}
return 0
}
func (x *GetHeadersRequestMessage) GetIsAscending() bool {
if x != nil {
return x.IsAscending
}
return false
}
type GetHeadersResponseMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Headers []string `protobuf:"bytes,1,rep,name=headers,proto3" json:"headers,omitempty"`
Error *RPCError `protobuf:"bytes,1000,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *GetHeadersResponseMessage) Reset() {
*x = GetHeadersResponseMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_messages_proto_msgTypes[89]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetHeadersResponseMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetHeadersResponseMessage) ProtoMessage() {}
func (x *GetHeadersResponseMessage) ProtoReflect() protoreflect.Message {
mi := &file_messages_proto_msgTypes[89]
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 GetHeadersResponseMessage.ProtoReflect.Descriptor instead.
func (*GetHeadersResponseMessage) Descriptor() ([]byte, []int) {
return file_messages_proto_rawDescGZIP(), []int{89}
}
func (x *GetHeadersResponseMessage) GetHeaders() []string {
if x != nil {
return x.Headers
}
return nil
}
func (x *GetHeadersResponseMessage) GetError() *RPCError {
if x != nil {
return x.Error
}
return nil
}
var File_messages_proto protoreflect.FileDescriptor
var file_messages_proto_rawDesc = []byte{
0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x12, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x22, 0x8d, 0x33, 0x0a, 0x0d,
0x4b, 0x61, 0x73, 0x70, 0x61, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3b, 0x0a,
0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x41, 0x64, 0x64,
0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x05, 0x62, 0x6c,
0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x48, 0x00, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x41, 0x0a, 0x0b, 0x74,
0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61,
0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
0x00, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x59,
0x0a, 0x13, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x6f,
0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x48, 0x00, 0x52, 0x13, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6c, 0x6f,
0x63, 0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x44, 0x0a, 0x0c, 0x62, 0x6c, 0x6f,
0x63, 0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
0x00, 0x52, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x12,
0x50, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x64, 0x64,
0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65,
0x73, 0x12, 0x50, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x42, 0x44, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49,
0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
0x00, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f,
0x63, 0x6b, 0x73, 0x12, 0x5c, 0x0a, 0x14, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4e, 0x65,
0x78, 0x74, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x14, 0x72, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x73, 0x12, 0x47, 0x0a, 0x0d, 0x44, 0x6f, 0x6e, 0x65, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x44, 0x6f, 0x6e, 0x65, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x44, 0x6f, 0x6e,
0x65, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x56, 0x0a, 0x12, 0x72, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69,
0x72, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x12,
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x73, 0x12, 0x56, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53,
0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x12, 0x59, 0x0a, 0x13, 0x72, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73,
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00,
0x52, 0x13, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x69, 0x62, 0x64, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x48, 0x00, 0x52, 0x08, 0x69, 0x62, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x47, 0x0a, 0x0d,
0x69, 0x6e, 0x76, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x0e, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x49, 0x6e, 0x76, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x52, 0x65, 0x6c, 0x61, 0x79,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x4d, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x54, 0x72, 0x61, 0x6e,
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x76, 0x54, 0x72,
0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x48, 0x00, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x0a, 0x04, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x10, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x50,
0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x04, 0x70, 0x69,
0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x04, 0x70, 0x6f, 0x6e, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x6e,
0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x04, 0x70, 0x6f, 0x6e, 0x67,
0x12, 0x41, 0x0a, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x18,
0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72,
0x65, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64,
0x54, 0x69, 0x70, 0x12, 0x32, 0x0a, 0x06, 0x76, 0x65, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x13, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x56, 0x65, 0x72, 0x61, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x06, 0x76, 0x65, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x35, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x59,
0x0a, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74,
0x46, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x48, 0x00, 0x52, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x32, 0x0a, 0x06, 0x72, 0x65, 0x6a,
0x65, 0x63, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x69, 0x0a,
0x18, 0x67, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f,
0x72, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0xe9, 0x07, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74,
0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x18,
0x67, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x6c, 0x0a, 0x19, 0x67, 0x65, 0x74, 0x43,
0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0xea, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72,
0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x19, 0x67, 0x65, 0x74,
0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x12, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0xeb, 0x07, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x12, 0x73, 0x75, 0x62,
0x6d, 0x69, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x5a, 0x0a, 0x13, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0xec, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x13, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x42, 0x6c,
0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x17, 0x67,
0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0xed, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f,
0x63, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x17, 0x67, 0x65, 0x74, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x69, 0x0a, 0x18, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54,
0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18,
0xee, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69,
0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c,
0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x48, 0x00, 0x52, 0x18, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x65,
0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66,
0x0a, 0x17, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64,
0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0xef, 0x07, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x74,
0x69, 0x66, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x17, 0x6e,
0x6f, 0x74, 0x69, 0x66, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x69, 0x0a, 0x18, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x18, 0xf0, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x18, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x63, 0x0a, 0x16, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x4e,
0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xf1, 0x07, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x16,
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x66, 0x0a, 0x17, 0x67, 0x65, 0x74, 0x50, 0x65, 0x65,
0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x18, 0xf2, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72,
0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x17, 0x67, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64,
0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x69,
0x0a, 0x18, 0x67, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0xf3, 0x07, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65,
0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x18, 0x67, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x19, 0x67, 0x65, 0x74,
0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0xf4, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x19, 0x67, 0x65,
0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x6f, 0x0a, 0x1a, 0x67, 0x65, 0x74, 0x53, 0x65,
0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0xf5, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6c, 0x65,
0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x1a, 0x67, 0x65,
0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x16, 0x67, 0x65, 0x74, 0x4d,
0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x18, 0xf6, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x16, 0x67, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f,
0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x66, 0x0a,
0x17, 0x67, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0xf7, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d,
0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x17, 0x67, 0x65,
0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x1b, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x6e,
0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x18, 0xf8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x1b, 0x67, 0x65,
0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e,
0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x75, 0x0a, 0x1c, 0x67, 0x65, 0x74,
0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66,
0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0xf9, 0x07, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74,
0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66,
0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x48, 0x00, 0x52, 0x1c, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64,
0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x4b, 0x0a, 0x0e, 0x61, 0x64, 0x64, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x18, 0xfa, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x61,
0x64, 0x64, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4e, 0x0a,
0x0f, 0x61, 0x64, 0x64, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x18, 0xfb, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x64,
0x64, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a,
0x18, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0xfc, 0x07, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x75, 0x62,
0x6d, 0x69, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x18,
0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x6c, 0x0a, 0x19, 0x73, 0x75, 0x62, 0x6d,
0x69, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0xfd, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54,
0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x19, 0x73, 0x75, 0x62,
0x6d, 0x69, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x19, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79,
0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x18, 0xfe, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x43, 0x68, 0x61,
0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x19, 0x6e, 0x6f, 0x74, 0x69, 0x66,
0x79, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x6f, 0x0a, 0x1a, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x43, 0x68,
0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x18, 0xff, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x43, 0x68, 0x61, 0x69,
0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x1a, 0x6e, 0x6f, 0x74, 0x69, 0x66,
0x79, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x18, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68,
0x61, 0x6e, 0x67, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x80, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x18, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x12, 0x4e, 0x0a, 0x0f, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x18, 0x81, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x0f, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x51, 0x0a, 0x10, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x18, 0x82, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
0x00, 0x52, 0x10, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74,
0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x83, 0x08, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47,
0x65, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x14, 0x67, 0x65,
0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x60, 0x0a, 0x15, 0x67, 0x65, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77,
0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x84, 0x08, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47,
0x65, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x15, 0x67,
0x65, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x18, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e,
0x46, 0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x18, 0x85, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x72, 0x6f, 0x6d,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x18, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46,
0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x6c, 0x0a, 0x19, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x86, 0x08, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x48, 0x00, 0x52, 0x19, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x72, 0x6f, 0x6d,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a,
0x10, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x18, 0x87, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x10,
0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x54, 0x0a, 0x11, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x88, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f,
0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x89,
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72,
0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x14, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x60, 0x0a, 0x15, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x8a,
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72,
0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00,
0x52, 0x15, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x16, 0x67, 0x65, 0x74, 0x42, 0x6c,
0x6f, 0x63, 0x6b, 0x44, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x18, 0x8b, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61, 0x67,
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x48, 0x00, 0x52, 0x16, 0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61,
0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x66, 0x0a, 0x17,
0x67, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x8c, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c,
0x6f, 0x63, 0x6b, 0x44, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x17, 0x67, 0x65, 0x74,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x1e, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46,
0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x8d, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76,
0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
0x00, 0x52, 0x1e, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69,
0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x7e, 0x0a, 0x1f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46, 0x69, 0x6e, 0x61,
0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x18, 0x8e, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46,
0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00,
0x52, 0x1f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74,
0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x7b, 0x0a, 0x1e, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c,
0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x18, 0x8f, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6e,
0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x1e,
0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f,
0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x7e,
0x0a, 0x1f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79,
0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x18, 0x90, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c,
0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x1f, 0x6e,
0x6f, 0x74, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e,
0x66, 0x6c, 0x69, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75,
0x0a, 0x1c, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69,
0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x91,
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72,
0x65, 0x2e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69,
0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x1c, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74,
0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8d, 0x01, 0x0a, 0x24, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69,
0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76,
0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x92,
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72,
0x65, 0x2e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69,
0x63, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x24, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63,
0x74, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x69, 0x0a, 0x18, 0x67, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70,
0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x18, 0x93, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45,
0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x18, 0x67, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f,
0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x6c, 0x0a, 0x19, 0x67, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e,
0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x94, 0x08,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65,
0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x69,
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x48, 0x00, 0x52, 0x19, 0x67, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45,
0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e,
0x0a, 0x0f, 0x73, 0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x18, 0x95, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x73,
0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x51,
0x0a, 0x10, 0x73, 0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x18, 0x96, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52,
0x10, 0x73, 0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x54, 0x0a, 0x11, 0x67, 0x65, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0xeb, 0x50, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x65, 0x61,
0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x57, 0x0a, 0x12, 0x67, 0x65, 0x74, 0x48, 0x65,
0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x98, 0x08,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65,
0x2e, 0x47, 0x65, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x12, 0x67, 0x65,
0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xbe, 0x01, 0x0a, 0x10,
0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x12, 0x34, 0x0a, 0x15, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x41, 0x6c, 0x6c, 0x53, 0x75,
0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
0x15, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x41, 0x6c, 0x6c, 0x53, 0x75, 0x62, 0x6e, 0x65,
0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74,
0x77, 0x6f, 0x72, 0x6b, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77,
0x6f, 0x72, 0x6b, 0x49, 0x44, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
0x6b, 0x49, 0x44, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4c, 0x69,
0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x4e, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52,
0x0b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x6a, 0x0a, 0x0a,
0x4e, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74,
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
0x52, 0x02, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x24, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x6e,
0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65,
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x8c,
0x01, 0x0a, 0x17, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
0x73, 0x65, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x69, 0x6e,
0x63, 0x6c, 0x75, 0x64, 0x65, 0x41, 0x6c, 0x6c, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f,
0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x69, 0x6e, 0x63, 0x6c, 0x75,
0x64, 0x65, 0x41, 0x6c, 0x6c, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
0x12, 0x3b, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x44,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69,
0x72, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x44, 0x52,
0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x44, 0x22, 0xd3, 0x02,
0x0a, 0x12, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x33,
0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73,
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x70,
0x75, 0x74, 0x73, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x03,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65,
0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70,
0x75, 0x74, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c,
0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6c,
0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65,
0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74,
0x77, 0x6f, 0x72, 0x6b, 0x49, 0x44, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f,
0x72, 0x6b, 0x49, 0x44, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x61, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28,
0x04, 0x52, 0x03, 0x67, 0x61, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61,
0x64, 0x48, 0x61, 0x73, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x0b, 0x70, 0x61,
0x79, 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x61, 0x79,
0x6c, 0x6f, 0x61, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x50, 0x61, 0x79, 0x6c,
0x6f, 0x61, 0x64, 0x22, 0x99, 0x01, 0x0a, 0x10, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x3f, 0x0a, 0x10, 0x50, 0x72, 0x65, 0x76,
0x69, 0x6f, 0x75, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4f,
0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x10, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75,
0x73, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x53, 0x69, 0x67,
0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0c, 0x52, 0x0f, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x63, 0x72,
0x69, 0x70, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18,
0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22,
0x60, 0x0a, 0x08, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x0d, 0x74,
0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54,
0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x0d, 0x74, 0x72,
0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x69,
0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65,
0x78, 0x22, 0x25, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0c, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x4d, 0x0a, 0x11, 0x54, 0x72, 0x61, 0x6e,
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x14, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62,
0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x53, 0x63, 0x72, 0x69, 0x70,
0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x22, 0x81, 0x01, 0x0a, 0x0c, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64,
0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x41, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e,
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73,
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x74,
0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xdb, 0x02, 0x0a, 0x0b,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x48,
0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x0c, 0x70, 0x61,
0x72, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x0e, 0x68, 0x61,
0x73, 0x68, 0x4d, 0x65, 0x72, 0x6b, 0x6c, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48,
0x61, 0x73, 0x68, 0x52, 0x0e, 0x68, 0x61, 0x73, 0x68, 0x4d, 0x65, 0x72, 0x6b, 0x6c, 0x65, 0x52,
0x6f, 0x6f, 0x74, 0x12, 0x43, 0x0a, 0x14, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x49,
0x44, 0x4d, 0x65, 0x72, 0x6b, 0x6c, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48, 0x61,
0x73, 0x68, 0x52, 0x14, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x49, 0x44, 0x4d, 0x65,
0x72, 0x6b, 0x6c, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x37, 0x0a, 0x0e, 0x75, 0x74, 0x78, 0x6f,
0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73,
0x68, 0x52, 0x0e, 0x75, 0x74, 0x78, 0x6f, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e,
0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06,
0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12,
0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x62,
0x69, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01,
0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x1c, 0x0a, 0x04, 0x48, 0x61, 0x73,
0x68, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x74, 0x0a, 0x1a, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x6c, 0x6f, 0x77, 0x48, 0x61, 0x73, 0x68,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69,
0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x07, 0x6c, 0x6f, 0x77, 0x48, 0x61, 0x73, 0x68,
0x12, 0x2b, 0x0a, 0x08, 0x68, 0x69, 0x67, 0x68, 0x48, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48,
0x61, 0x73, 0x68, 0x52, 0x08, 0x68, 0x69, 0x67, 0x68, 0x48, 0x61, 0x73, 0x68, 0x22, 0x3e, 0x0a,
0x13, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x06, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65,
0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x06, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x22, 0x71, 0x0a,
0x17, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x6c, 0x6f, 0x77, 0x48,
0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x07, 0x6c, 0x6f, 0x77, 0x48,
0x61, 0x73, 0x68, 0x12, 0x2b, 0x0a, 0x08, 0x68, 0x69, 0x67, 0x68, 0x48, 0x61, 0x73, 0x68, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72,
0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x08, 0x68, 0x69, 0x67, 0x68, 0x48, 0x61, 0x73, 0x68,
0x22, 0x1d, 0x0a, 0x1b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x49,
0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22,
0x16, 0x0a, 0x14, 0x44, 0x6f, 0x6e, 0x65, 0x49, 0x42, 0x44, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x44, 0x0a, 0x19, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x06, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65,
0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x06, 0x68, 0x61, 0x73, 0x68, 0x65, 0x73, 0x22, 0x1b, 0x0a,
0x19, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64,
0x54, 0x69, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x48, 0x0a, 0x1a, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72,
0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52,
0x03, 0x69, 0x64, 0x73, 0x22, 0x46, 0x0a, 0x1a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x28, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73,
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x22, 0x3b, 0x0a, 0x14,
0x49, 0x6e, 0x76, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48,
0x61, 0x73, 0x68, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x44, 0x0a, 0x16, 0x49, 0x6e, 0x76,
0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61,
0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x03, 0x69, 0x64, 0x73, 0x22,
0x23, 0x0a, 0x0b, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14,
0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e,
0x6f, 0x6e, 0x63, 0x65, 0x22, 0x23, 0x0a, 0x0b, 0x50, 0x6f, 0x6e, 0x67, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x4f, 0x0a, 0x12, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x39, 0x0a, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61,
0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63,
0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x22, 0x0f, 0x0a, 0x0d, 0x56, 0x65,
0x72, 0x61, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x8d, 0x03, 0x0a, 0x0e,
0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x28,
0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x12, 0x2f, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x4e, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72,
0x65, 0x73, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52,
0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74,
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e,
0x74, 0x12, 0x39, 0x0a, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70,
0x48, 0x61, 0x73, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x0f, 0x73, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x12, 0x26, 0x0a, 0x0e,
0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x54, 0x78, 0x18, 0x08,
0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x6c,
0x61, 0x79, 0x54, 0x78, 0x12, 0x3b, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f,
0x72, 0x6b, 0x49, 0x44, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
0x6b, 0x49, 0x44, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49,
0x44, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x0a, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x27, 0x0a, 0x0d, 0x52,
0x65, 0x6a, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06,
0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65,
0x61, 0x73, 0x6f, 0x6e, 0x22, 0x24, 0x0a, 0x08, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x21, 0x0a, 0x1f, 0x47, 0x65,
0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x76, 0x0a,
0x20, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f,
0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77,
0x6f, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65,
0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72,
0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x4a, 0x0a, 0x19, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c,
0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63,
0x6b, 0x22, 0x48, 0x0a, 0x1a, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x40, 0x0a, 0x1e, 0x47,
0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a,
0x0a, 0x70, 0x61, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x0a, 0x70, 0x61, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x8a, 0x01,
0x0a, 0x1f, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61,
0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x12, 0x3b, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x52, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2a,
0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72,
0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x20, 0x0a, 0x1e, 0x4e, 0x6f,
0x74, 0x69, 0x66, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x4d, 0x0a, 0x1f,
0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x4e, 0x0a, 0x1d, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2d, 0x0a, 0x05,
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x20, 0x0a, 0x1e, 0x47,
0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x9b, 0x01,
0x0a, 0x1f, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x12, 0x4c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65,
0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65,
0x73, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12,
0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x39, 0x0a, 0x23, 0x47,
0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x4b,
0x6e, 0x6f, 0x77, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x41, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x41, 0x64, 0x64, 0x72, 0x22, 0x22, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x79, 0x0a, 0x21, 0x47, 0x65,
0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x28, 0x0a, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61,
0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72,
0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x7b, 0x0a, 0x0c, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x04, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x59, 0x0a, 0x16, 0x74, 0x72, 0x61, 0x6e, 0x73,
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74,
0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56,
0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x16, 0x74, 0x72, 0x61, 0x6e,
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61,
0x74, 0x61, 0x22, 0x33, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x74, 0x78, 0x49, 0x64, 0x22, 0x7b, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x4d, 0x65,
0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x6e, 0x74,
0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x52, 0x05, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f,
0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65,
0x72, 0x72, 0x6f, 0x72, 0x22, 0x21, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x70, 0x6f,
0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x81, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x4d,
0x65, 0x6d, 0x70, 0x6f, 0x6f, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x31, 0x0a, 0x07,
0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x70, 0x6f, 0x6f,
0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12,
0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x24, 0x0a, 0x22, 0x47,
0x65, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49,
0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x22, 0x8f, 0x01, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x69, 0x6e, 0x66,
0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65,
0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x52, 0x05, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72,
0x72, 0x6f, 0x72, 0x22, 0xff, 0x02, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
0x63, 0x74, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2a, 0x0a,
0x10, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x69, 0x6e,
0x67, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x48,
0x61, 0x73, 0x68, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x53, 0x79, 0x6e, 0x63, 0x4e, 0x6f, 0x64,
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x53, 0x79, 0x6e, 0x63, 0x4e,
0x6f, 0x64, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e,
0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x4f, 0x75, 0x74, 0x62, 0x6f,
0x75, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65,
0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66,
0x73, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74,
0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e,
0x74, 0x12, 0x3c, 0x0a, 0x19, 0x61, 0x64, 0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x65, 0x64, 0x50,
0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09,
0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x61, 0x64, 0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x65, 0x64,
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x24, 0x0a, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64,
0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e,
0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x53, 0x0a, 0x15, 0x41, 0x64, 0x64, 0x50, 0x65, 0x65, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18,
0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x50, 0x65,
0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69,
0x73, 0x50, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x44, 0x0a, 0x16, 0x41, 0x64,
0x64, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65,
0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
0x22, 0x70, 0x0a, 0x1f, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x12, 0x4d, 0x0a, 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e,
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x12,
0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x22, 0x62, 0x0a, 0x20, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x61, 0x6e,
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x49, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72,
0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52,
0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x22, 0x0a, 0x20, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79,
0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x4f, 0x0a, 0x21, 0x4e, 0x6f,
0x74, 0x69, 0x66, 0x79, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x9e, 0x01, 0x0a, 0x1f,
0x43, 0x68, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69,
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x38, 0x0a, 0x17, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09,
0x52, 0x17, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c,
0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x10, 0x61, 0x64, 0x64,
0x65, 0x64, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x02, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x10, 0x61, 0x64, 0x64, 0x65,
0x64, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x22, 0x62, 0x0a, 0x0a,
0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61,
0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x40,
0x0a, 0x0e, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69,
0x72, 0x65, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x52, 0x0e, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
0x22, 0x49, 0x0a, 0x0d, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65,
0x64, 0x54, 0x78, 0x49, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x63,
0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x54, 0x78, 0x49, 0x64, 0x73, 0x22, 0x96, 0x01, 0x0a, 0x16,
0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75,
0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x44,
0x0a, 0x1d, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x18,
0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x54, 0x72,
0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65,
0x44, 0x61, 0x74, 0x61, 0x22, 0xac, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x12, 0x1c, 0x0a, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x47,
0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61,
0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73,
0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62,
0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72,
0x72, 0x6f, 0x72, 0x22, 0x99, 0x04, 0x0a, 0x10, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72,
0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07,
0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x48, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x48, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0e, 0x68, 0x61, 0x73, 0x68, 0x4d, 0x65,
0x72, 0x6b, 0x6c, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
0x68, 0x61, 0x73, 0x68, 0x4d, 0x65, 0x72, 0x6b, 0x6c, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x32,
0x0a, 0x14, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x49, 0x44, 0x4d, 0x65, 0x72, 0x6b,
0x6c, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x61, 0x63,
0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x49, 0x44, 0x4d, 0x65, 0x72, 0x6b, 0x6c, 0x65, 0x52, 0x6f,
0x6f, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x75, 0x74, 0x78, 0x6f, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x75, 0x74, 0x78, 0x6f,
0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x59, 0x0a, 0x16, 0x74, 0x72,
0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65,
0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x16, 0x74,
0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73,
0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20,
0x01, 0x28, 0x03, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e,
0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62,
0x69, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74,
0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75,
0x6c, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73,
0x68, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x61, 0x72, 0x65, 0x6e,
0x74, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x73, 0x65, 0x6c, 0x65, 0x63,
0x74, 0x65, 0x64, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x18, 0x0d, 0x20,
0x01, 0x28, 0x09, 0x52, 0x12, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x61, 0x72,
0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73,
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52,
0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x22,
0x8f, 0x04, 0x0a, 0x16, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56,
0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x49, 0x64, 0x12, 0x12,
0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61,
0x73, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04,
0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01,
0x28, 0x04, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c,
0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64,
0x12, 0x10, 0x0a, 0x03, 0x67, 0x61, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x67,
0x61, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x61, 0x73,
0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64,
0x48, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18,
0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x5e,
0x0a, 0x18, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72,
0x62, 0x6f, 0x73, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61,
0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x49,
0x6e, 0x70, 0x75, 0x74, 0x52, 0x18, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x61,
0x0a, 0x19, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72,
0x62, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x54, 0x72,
0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65,
0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x19, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74,
0x73, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x18, 0x0c,
0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12,
0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x74,
0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65,
0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d,
0x65, 0x22, 0x9f, 0x01, 0x0a, 0x17, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a,
0x04, 0x74, 0x78, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x49,
0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e,
0x64, 0x65, 0x78, 0x12, 0x32, 0x0a, 0x09, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x53, 0x69, 0x67,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69,
0x72, 0x65, 0x2e, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x53, 0x69, 0x67, 0x52, 0x09, 0x73, 0x63,
0x72, 0x69, 0x70, 0x74, 0x53, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65,
0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65,
0x6e, 0x63, 0x65, 0x22, 0x2f, 0x0a, 0x09, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x53, 0x69, 0x67,
0x12, 0x10, 0x0a, 0x03, 0x61, 0x73, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x61,
0x73, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x03, 0x68, 0x65, 0x78, 0x22, 0x89, 0x01, 0x0a, 0x18, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75,
0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x41, 0x0a,
0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x75,
0x6c, 0x74, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79,
0x22, 0x66, 0x0a, 0x12, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79,
0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x73, 0x6d, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x03, 0x61, 0x73, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x68, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79,
0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18,
0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x41, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x53,
0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6e, 0x65,
0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73,
0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x22, 0x66, 0x0a, 0x1c, 0x47,
0x65, 0x74, 0x53, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x67,
0x61, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x67,
0x61, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72,
0x72, 0x6f, 0x72, 0x22, 0x79, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46,
0x72, 0x6f, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x48,
0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74,
0x48, 0x61, 0x73, 0x68, 0x12, 0x38, 0x0a, 0x17, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x18,
0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x42, 0x6c,
0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0x94,
0x02, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x17, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x43, 0x68,
0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x09, 0x52, 0x17, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x43, 0x68, 0x61,
0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x41, 0x0a,
0x10, 0x61, 0x64, 0x64, 0x65, 0x64, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x10,
0x61, 0x64, 0x64, 0x65, 0x64, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73,
0x12, 0x47, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65,
0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62,
0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65,
0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72,
0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0xe1, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f,
0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x6f, 0x77, 0x48, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x6c, 0x6f, 0x77, 0x48, 0x61, 0x73, 0x68, 0x12, 0x2c, 0x0a, 0x11, 0x69,
0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x78, 0x65, 0x73,
0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x78, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x17, 0x69, 0x6e, 0x63,
0x6c, 0x75, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65,
0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x6e, 0x63, 0x6c,
0x75, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44,
0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x1d, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x54, 0x72,
0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65,
0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d, 0x69, 0x6e, 0x63, 0x6c,
0x75, 0x64, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65,
0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0xd1, 0x01, 0x0a, 0x18, 0x47, 0x65,
0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48,
0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x62, 0x6c, 0x6f,
0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63,
0x6b, 0x48, 0x65, 0x78, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c,
0x6f, 0x63, 0x6b, 0x48, 0x65, 0x78, 0x65, 0x73, 0x12, 0x47, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63,
0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52,
0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x62, 0x6f, 0x73, 0x65, 0x44, 0x61, 0x74,
0x61, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50,
0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x1d, 0x0a,
0x1b, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x6a, 0x0a, 0x1c,
0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a,
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x05,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f,
0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x1f, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x42,
0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xa6, 0x02, 0x0a, 0x1e, 0x47, 0x65,
0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x0b,
0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e,
0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x04, 0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c,
0x0a, 0x09, 0x74, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
0x09, 0x52, 0x09, 0x74, 0x69, 0x70, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a,
0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01,
0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x26, 0x0a, 0x0e,
0x70, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x70, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x6e,
0x54, 0x69, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x50,
0x61, 0x72, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28,
0x09, 0x52, 0x13, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18,
0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69,
0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72,
0x6f, 0x72, 0x22, 0x55, 0x0a, 0x25, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46, 0x69, 0x6e,
0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x66,
0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x22, 0x54, 0x0a, 0x26, 0x52, 0x65, 0x73,
0x6f, 0x6c, 0x76, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66,
0x6c, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e,
0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22,
0x27, 0x0a, 0x25, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74,
0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x54, 0x0a, 0x26, 0x4e, 0x6f, 0x74, 0x69,
0x66, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69,
0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52,
0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x55,
0x0a, 0x23, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69,
0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x76, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69,
0x6e, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x12, 0x76, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x6f, 0x63,
0x6b, 0x48, 0x61, 0x73, 0x68, 0x22, 0x5b, 0x0a, 0x2b, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74,
0x79, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65,
0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79,
0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x11, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61,
0x73, 0x68, 0x22, 0x18, 0x0a, 0x16, 0x53, 0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x45, 0x0a, 0x17,
0x53, 0x68, 0x75, 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77,
0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65, 0x72,
0x72, 0x6f, 0x72, 0x22, 0x70, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x48, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a,
0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6c, 0x69,
0x6d, 0x69, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x41, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x69,
0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x73, 0x63, 0x65,
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x61, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x48, 0x65, 0x61, 0x64,
0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x09, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x05,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x52, 0x50, 0x43, 0x45, 0x72, 0x72, 0x6f,
0x72, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x32, 0x50, 0x0a, 0x03, 0x50, 0x32, 0x50, 0x12,
0x49, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
0x12, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4b, 0x61, 0x73,
0x70, 0x61, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x18, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4b, 0x61, 0x73, 0x70, 0x61, 0x64, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x32, 0x50, 0x0a, 0x03, 0x52, 0x50,
0x43, 0x12, 0x49, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x72, 0x65,
0x61, 0x6d, 0x12, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4b,
0x61, 0x73, 0x70, 0x61, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x18, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x4b, 0x61, 0x73, 0x70, 0x61, 0x64, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x42, 0x26, 0x5a, 0x24,
0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6b, 0x61, 0x73, 0x70, 0x61,
0x6e, 0x65, 0x74, 0x2f, 0x6b, 0x61, 0x73, 0x70, 0x61, 0x64, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x77, 0x69, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_messages_proto_rawDescOnce sync.Once
file_messages_proto_rawDescData = file_messages_proto_rawDesc
)
func file_messages_proto_rawDescGZIP() []byte {
file_messages_proto_rawDescOnce.Do(func() {
file_messages_proto_rawDescData = protoimpl.X.CompressGZIP(file_messages_proto_rawDescData)
})
return file_messages_proto_rawDescData
}
var file_messages_proto_msgTypes = make([]protoimpl.MessageInfo, 90)
var file_messages_proto_goTypes = []interface{}{
(*KaspadMessage)(nil), // 0: protowire.KaspadMessage
(*AddressesMessage)(nil), // 1: protowire.AddressesMessage
(*NetAddress)(nil), // 2: protowire.NetAddress
(*SubnetworkID)(nil), // 3: protowire.SubnetworkID
(*RequestAddressesMessage)(nil), // 4: protowire.RequestAddressesMessage
(*TransactionMessage)(nil), // 5: protowire.TransactionMessage
(*TransactionInput)(nil), // 6: protowire.TransactionInput
(*Outpoint)(nil), // 7: protowire.Outpoint
(*TransactionID)(nil), // 8: protowire.TransactionID
(*TransactionOutput)(nil), // 9: protowire.TransactionOutput
(*BlockMessage)(nil), // 10: protowire.BlockMessage
(*BlockHeader)(nil), // 11: protowire.BlockHeader
(*Hash)(nil), // 12: protowire.Hash
(*RequestBlockLocatorMessage)(nil), // 13: protowire.RequestBlockLocatorMessage
(*BlockLocatorMessage)(nil), // 14: protowire.BlockLocatorMessage
(*RequestIBDBlocksMessage)(nil), // 15: protowire.RequestIBDBlocksMessage
(*RequestNextIBDBlocksMessage)(nil), // 16: protowire.RequestNextIBDBlocksMessage
(*DoneIBDBlocksMessage)(nil), // 17: protowire.DoneIBDBlocksMessage
(*RequestRelayBlocksMessage)(nil), // 18: protowire.RequestRelayBlocksMessage
(*RequestSelectedTipMessage)(nil), // 19: protowire.RequestSelectedTipMessage
(*RequestTransactionsMessage)(nil), // 20: protowire.RequestTransactionsMessage
(*TransactionNotFoundMessage)(nil), // 21: protowire.TransactionNotFoundMessage
(*InvRelayBlockMessage)(nil), // 22: protowire.InvRelayBlockMessage
(*InvTransactionsMessage)(nil), // 23: protowire.InvTransactionsMessage
(*PingMessage)(nil), // 24: protowire.PingMessage
(*PongMessage)(nil), // 25: protowire.PongMessage
(*SelectedTipMessage)(nil), // 26: protowire.SelectedTipMessage
(*VerackMessage)(nil), // 27: protowire.VerackMessage
(*VersionMessage)(nil), // 28: protowire.VersionMessage
(*RejectMessage)(nil), // 29: protowire.RejectMessage
(*RPCError)(nil), // 30: protowire.RPCError
(*GetCurrentNetworkRequestMessage)(nil), // 31: protowire.GetCurrentNetworkRequestMessage
(*GetCurrentNetworkResponseMessage)(nil), // 32: protowire.GetCurrentNetworkResponseMessage
(*SubmitBlockRequestMessage)(nil), // 33: protowire.SubmitBlockRequestMessage
(*SubmitBlockResponseMessage)(nil), // 34: protowire.SubmitBlockResponseMessage
(*GetBlockTemplateRequestMessage)(nil), // 35: protowire.GetBlockTemplateRequestMessage
(*GetBlockTemplateResponseMessage)(nil), // 36: protowire.GetBlockTemplateResponseMessage
(*NotifyBlockAddedRequestMessage)(nil), // 37: protowire.NotifyBlockAddedRequestMessage
(*NotifyBlockAddedResponseMessage)(nil), // 38: protowire.NotifyBlockAddedResponseMessage
(*BlockAddedNotificationMessage)(nil), // 39: protowire.BlockAddedNotificationMessage
(*GetPeerAddressesRequestMessage)(nil), // 40: protowire.GetPeerAddressesRequestMessage
(*GetPeerAddressesResponseMessage)(nil), // 41: protowire.GetPeerAddressesResponseMessage
(*GetPeerAddressesKnownAddressMessage)(nil), // 42: protowire.GetPeerAddressesKnownAddressMessage
(*GetSelectedTipHashRequestMessage)(nil), // 43: protowire.GetSelectedTipHashRequestMessage
(*GetSelectedTipHashResponseMessage)(nil), // 44: protowire.GetSelectedTipHashResponseMessage
(*MempoolEntry)(nil), // 45: protowire.MempoolEntry
(*GetMempoolEntryRequestMessage)(nil), // 46: protowire.GetMempoolEntryRequestMessage
(*GetMempoolEntryResponseMessage)(nil), // 47: protowire.GetMempoolEntryResponseMessage
(*GetMempoolEntriesRequestMessage)(nil), // 48: protowire.GetMempoolEntriesRequestMessage
(*GetMempoolEntriesResponseMessage)(nil), // 49: protowire.GetMempoolEntriesResponseMessage
(*GetConnectedPeerInfoRequestMessage)(nil), // 50: protowire.GetConnectedPeerInfoRequestMessage
(*GetConnectedPeerInfoResponseMessage)(nil), // 51: protowire.GetConnectedPeerInfoResponseMessage
(*GetConnectedPeerInfoMessage)(nil), // 52: protowire.GetConnectedPeerInfoMessage
(*AddPeerRequestMessage)(nil), // 53: protowire.AddPeerRequestMessage
(*AddPeerResponseMessage)(nil), // 54: protowire.AddPeerResponseMessage
(*SubmitTransactionRequestMessage)(nil), // 55: protowire.SubmitTransactionRequestMessage
(*SubmitTransactionResponseMessage)(nil), // 56: protowire.SubmitTransactionResponseMessage
(*NotifyChainChangedRequestMessage)(nil), // 57: protowire.NotifyChainChangedRequestMessage
(*NotifyChainChangedResponseMessage)(nil), // 58: protowire.NotifyChainChangedResponseMessage
(*ChainChangedNotificationMessage)(nil), // 59: protowire.ChainChangedNotificationMessage
(*ChainBlock)(nil), // 60: protowire.ChainBlock
(*AcceptedBlock)(nil), // 61: protowire.AcceptedBlock
(*GetBlockRequestMessage)(nil), // 62: protowire.GetBlockRequestMessage
(*GetBlockResponseMessage)(nil), // 63: protowire.GetBlockResponseMessage
(*BlockVerboseData)(nil), // 64: protowire.BlockVerboseData
(*TransactionVerboseData)(nil), // 65: protowire.TransactionVerboseData
(*TransactionVerboseInput)(nil), // 66: protowire.TransactionVerboseInput
(*ScriptSig)(nil), // 67: protowire.ScriptSig
(*TransactionVerboseOutput)(nil), // 68: protowire.TransactionVerboseOutput
(*ScriptPubKeyResult)(nil), // 69: protowire.ScriptPubKeyResult
(*GetSubnetworkRequestMessage)(nil), // 70: protowire.GetSubnetworkRequestMessage
(*GetSubnetworkResponseMessage)(nil), // 71: protowire.GetSubnetworkResponseMessage
(*GetChainFromBlockRequestMessage)(nil), // 72: protowire.GetChainFromBlockRequestMessage
(*GetChainFromBlockResponseMessage)(nil), // 73: protowire.GetChainFromBlockResponseMessage
(*GetBlocksRequestMessage)(nil), // 74: protowire.GetBlocksRequestMessage
(*GetBlocksResponseMessage)(nil), // 75: protowire.GetBlocksResponseMessage
(*GetBlockCountRequestMessage)(nil), // 76: protowire.GetBlockCountRequestMessage
(*GetBlockCountResponseMessage)(nil), // 77: protowire.GetBlockCountResponseMessage
(*GetBlockDagInfoRequestMessage)(nil), // 78: protowire.GetBlockDagInfoRequestMessage
(*GetBlockDagInfoResponseMessage)(nil), // 79: protowire.GetBlockDagInfoResponseMessage
(*ResolveFinalityConflictRequestMessage)(nil), // 80: protowire.ResolveFinalityConflictRequestMessage
(*ResolveFinalityConflictResponseMessage)(nil), // 81: protowire.ResolveFinalityConflictResponseMessage
(*NotifyFinalityConflictsRequestMessage)(nil), // 82: protowire.NotifyFinalityConflictsRequestMessage
(*NotifyFinalityConflictsResponseMessage)(nil), // 83: protowire.NotifyFinalityConflictsResponseMessage
(*FinalityConflictNotificationMessage)(nil), // 84: protowire.FinalityConflictNotificationMessage
(*FinalityConflictResolvedNotificationMessage)(nil), // 85: protowire.FinalityConflictResolvedNotificationMessage
(*ShutDownRequestMessage)(nil), // 86: protowire.ShutDownRequestMessage
(*ShutDownResponseMessage)(nil), // 87: protowire.ShutDownResponseMessage
(*GetHeadersRequestMessage)(nil), // 88: protowire.GetHeadersRequestMessage
(*GetHeadersResponseMessage)(nil), // 89: protowire.GetHeadersResponseMessage
}
var file_messages_proto_depIdxs = []int32{
1, // 0: protowire.KaspadMessage.addresses:type_name -> protowire.AddressesMessage
10, // 1: protowire.KaspadMessage.block:type_name -> protowire.BlockMessage
5, // 2: protowire.KaspadMessage.transaction:type_name -> protowire.TransactionMessage
13, // 3: protowire.KaspadMessage.requestBlockLocator:type_name -> protowire.RequestBlockLocatorMessage
14, // 4: protowire.KaspadMessage.blockLocator:type_name -> protowire.BlockLocatorMessage
4, // 5: protowire.KaspadMessage.requestAddresses:type_name -> protowire.RequestAddressesMessage
15, // 6: protowire.KaspadMessage.requestIBDBlocks:type_name -> protowire.RequestIBDBlocksMessage
16, // 7: protowire.KaspadMessage.requestNextIBDBlocks:type_name -> protowire.RequestNextIBDBlocksMessage
17, // 8: protowire.KaspadMessage.DoneIBDBlocks:type_name -> protowire.DoneIBDBlocksMessage
18, // 9: protowire.KaspadMessage.requestRelayBlocks:type_name -> protowire.RequestRelayBlocksMessage
19, // 10: protowire.KaspadMessage.requestSelectedTip:type_name -> protowire.RequestSelectedTipMessage
20, // 11: protowire.KaspadMessage.requestTransactions:type_name -> protowire.RequestTransactionsMessage
10, // 12: protowire.KaspadMessage.ibdBlock:type_name -> protowire.BlockMessage
22, // 13: protowire.KaspadMessage.invRelayBlock:type_name -> protowire.InvRelayBlockMessage
23, // 14: protowire.KaspadMessage.invTransactions:type_name -> protowire.InvTransactionsMessage
24, // 15: protowire.KaspadMessage.ping:type_name -> protowire.PingMessage
25, // 16: protowire.KaspadMessage.pong:type_name -> protowire.PongMessage
26, // 17: protowire.KaspadMessage.selectedTip:type_name -> protowire.SelectedTipMessage
27, // 18: protowire.KaspadMessage.verack:type_name -> protowire.VerackMessage
28, // 19: protowire.KaspadMessage.version:type_name -> protowire.VersionMessage
21, // 20: protowire.KaspadMessage.transactionNotFound:type_name -> protowire.TransactionNotFoundMessage
29, // 21: protowire.KaspadMessage.reject:type_name -> protowire.RejectMessage
31, // 22: protowire.KaspadMessage.getCurrentNetworkRequest:type_name -> protowire.GetCurrentNetworkRequestMessage
32, // 23: protowire.KaspadMessage.getCurrentNetworkResponse:type_name -> protowire.GetCurrentNetworkResponseMessage
33, // 24: protowire.KaspadMessage.submitBlockRequest:type_name -> protowire.SubmitBlockRequestMessage
34, // 25: protowire.KaspadMessage.submitBlockResponse:type_name -> protowire.SubmitBlockResponseMessage
35, // 26: protowire.KaspadMessage.getBlockTemplateRequest:type_name -> protowire.GetBlockTemplateRequestMessage
36, // 27: protowire.KaspadMessage.getBlockTemplateResponse:type_name -> protowire.GetBlockTemplateResponseMessage
37, // 28: protowire.KaspadMessage.notifyBlockAddedRequest:type_name -> protowire.NotifyBlockAddedRequestMessage
38, // 29: protowire.KaspadMessage.notifyBlockAddedResponse:type_name -> protowire.NotifyBlockAddedResponseMessage
39, // 30: protowire.KaspadMessage.blockAddedNotification:type_name -> protowire.BlockAddedNotificationMessage
40, // 31: protowire.KaspadMessage.getPeerAddressesRequest:type_name -> protowire.GetPeerAddressesRequestMessage
41, // 32: protowire.KaspadMessage.getPeerAddressesResponse:type_name -> protowire.GetPeerAddressesResponseMessage
43, // 33: protowire.KaspadMessage.getSelectedTipHashRequest:type_name -> protowire.GetSelectedTipHashRequestMessage
44, // 34: protowire.KaspadMessage.getSelectedTipHashResponse:type_name -> protowire.GetSelectedTipHashResponseMessage
46, // 35: protowire.KaspadMessage.getMempoolEntryRequest:type_name -> protowire.GetMempoolEntryRequestMessage
47, // 36: protowire.KaspadMessage.getMempoolEntryResponse:type_name -> protowire.GetMempoolEntryResponseMessage
50, // 37: protowire.KaspadMessage.getConnectedPeerInfoRequest:type_name -> protowire.GetConnectedPeerInfoRequestMessage
51, // 38: protowire.KaspadMessage.getConnectedPeerInfoResponse:type_name -> protowire.GetConnectedPeerInfoResponseMessage
53, // 39: protowire.KaspadMessage.addPeerRequest:type_name -> protowire.AddPeerRequestMessage
54, // 40: protowire.KaspadMessage.addPeerResponse:type_name -> protowire.AddPeerResponseMessage
55, // 41: protowire.KaspadMessage.submitTransactionRequest:type_name -> protowire.SubmitTransactionRequestMessage
56, // 42: protowire.KaspadMessage.submitTransactionResponse:type_name -> protowire.SubmitTransactionResponseMessage
57, // 43: protowire.KaspadMessage.notifyChainChangedRequest:type_name -> protowire.NotifyChainChangedRequestMessage
58, // 44: protowire.KaspadMessage.notifyChainChangedResponse:type_name -> protowire.NotifyChainChangedResponseMessage
59, // 45: protowire.KaspadMessage.chainChangedNotification:type_name -> protowire.ChainChangedNotificationMessage
62, // 46: protowire.KaspadMessage.getBlockRequest:type_name -> protowire.GetBlockRequestMessage
63, // 47: protowire.KaspadMessage.getBlockResponse:type_name -> protowire.GetBlockResponseMessage
70, // 48: protowire.KaspadMessage.getSubnetworkRequest:type_name -> protowire.GetSubnetworkRequestMessage
71, // 49: protowire.KaspadMessage.getSubnetworkResponse:type_name -> protowire.GetSubnetworkResponseMessage
72, // 50: protowire.KaspadMessage.getChainFromBlockRequest:type_name -> protowire.GetChainFromBlockRequestMessage
73, // 51: protowire.KaspadMessage.getChainFromBlockResponse:type_name -> protowire.GetChainFromBlockResponseMessage
74, // 52: protowire.KaspadMessage.getBlocksRequest:type_name -> protowire.GetBlocksRequestMessage
75, // 53: protowire.KaspadMessage.getBlocksResponse:type_name -> protowire.GetBlocksResponseMessage
76, // 54: protowire.KaspadMessage.getBlockCountRequest:type_name -> protowire.GetBlockCountRequestMessage
77, // 55: protowire.KaspadMessage.getBlockCountResponse:type_name -> protowire.GetBlockCountResponseMessage
78, // 56: protowire.KaspadMessage.getBlockDagInfoRequest:type_name -> protowire.GetBlockDagInfoRequestMessage
79, // 57: protowire.KaspadMessage.getBlockDagInfoResponse:type_name -> protowire.GetBlockDagInfoResponseMessage
80, // 58: protowire.KaspadMessage.resolveFinalityConflictRequest:type_name -> protowire.ResolveFinalityConflictRequestMessage
81, // 59: protowire.KaspadMessage.resolveFinalityConflictResponse:type_name -> protowire.ResolveFinalityConflictResponseMessage
82, // 60: protowire.KaspadMessage.notifyFinalityConflictsRequest:type_name -> protowire.NotifyFinalityConflictsRequestMessage
83, // 61: protowire.KaspadMessage.notifyFinalityConflictsResponse:type_name -> protowire.NotifyFinalityConflictsResponseMessage
84, // 62: protowire.KaspadMessage.finalityConflictNotification:type_name -> protowire.FinalityConflictNotificationMessage
85, // 63: protowire.KaspadMessage.finalityConflictResolvedNotification:type_name -> protowire.FinalityConflictResolvedNotificationMessage
48, // 64: protowire.KaspadMessage.getMempoolEntriesRequest:type_name -> protowire.GetMempoolEntriesRequestMessage
49, // 65: protowire.KaspadMessage.getMempoolEntriesResponse:type_name -> protowire.GetMempoolEntriesResponseMessage
86, // 66: protowire.KaspadMessage.shutDownRequest:type_name -> protowire.ShutDownRequestMessage
87, // 67: protowire.KaspadMessage.shutDownResponse:type_name -> protowire.ShutDownResponseMessage
88, // 68: protowire.KaspadMessage.getHeadersRequest:type_name -> protowire.GetHeadersRequestMessage
89, // 69: protowire.KaspadMessage.getHeadersResponse:type_name -> protowire.GetHeadersResponseMessage
3, // 70: protowire.AddressesMessage.subnetworkID:type_name -> protowire.SubnetworkID
2, // 71: protowire.AddressesMessage.addressList:type_name -> protowire.NetAddress
3, // 72: protowire.RequestAddressesMessage.subnetworkID:type_name -> protowire.SubnetworkID
6, // 73: protowire.TransactionMessage.inputs:type_name -> protowire.TransactionInput
9, // 74: protowire.TransactionMessage.outputs:type_name -> protowire.TransactionOutput
3, // 75: protowire.TransactionMessage.subnetworkID:type_name -> protowire.SubnetworkID
12, // 76: protowire.TransactionMessage.payloadHash:type_name -> protowire.Hash
7, // 77: protowire.TransactionInput.PreviousOutpoint:type_name -> protowire.Outpoint
8, // 78: protowire.Outpoint.transactionID:type_name -> protowire.TransactionID
11, // 79: protowire.BlockMessage.header:type_name -> protowire.BlockHeader
5, // 80: protowire.BlockMessage.transactions:type_name -> protowire.TransactionMessage
12, // 81: protowire.BlockHeader.parentHashes:type_name -> protowire.Hash
12, // 82: protowire.BlockHeader.hashMerkleRoot:type_name -> protowire.Hash
12, // 83: protowire.BlockHeader.acceptedIDMerkleRoot:type_name -> protowire.Hash
12, // 84: protowire.BlockHeader.utxoCommitment:type_name -> protowire.Hash
12, // 85: protowire.RequestBlockLocatorMessage.lowHash:type_name -> protowire.Hash
12, // 86: protowire.RequestBlockLocatorMessage.highHash:type_name -> protowire.Hash
12, // 87: protowire.BlockLocatorMessage.hashes:type_name -> protowire.Hash
12, // 88: protowire.RequestIBDBlocksMessage.lowHash:type_name -> protowire.Hash
12, // 89: protowire.RequestIBDBlocksMessage.highHash:type_name -> protowire.Hash
12, // 90: protowire.RequestRelayBlocksMessage.hashes:type_name -> protowire.Hash
8, // 91: protowire.RequestTransactionsMessage.ids:type_name -> protowire.TransactionID
8, // 92: protowire.TransactionNotFoundMessage.id:type_name -> protowire.TransactionID
12, // 93: protowire.InvRelayBlockMessage.hash:type_name -> protowire.Hash
8, // 94: protowire.InvTransactionsMessage.ids:type_name -> protowire.TransactionID
12, // 95: protowire.SelectedTipMessage.selectedTipHash:type_name -> protowire.Hash
2, // 96: protowire.VersionMessage.address:type_name -> protowire.NetAddress
12, // 97: protowire.VersionMessage.selectedTipHash:type_name -> protowire.Hash
3, // 98: protowire.VersionMessage.subnetworkID:type_name -> protowire.SubnetworkID
30, // 99: protowire.GetCurrentNetworkResponseMessage.error:type_name -> protowire.RPCError
10, // 100: protowire.SubmitBlockRequestMessage.block:type_name -> protowire.BlockMessage
30, // 101: protowire.SubmitBlockResponseMessage.error:type_name -> protowire.RPCError
10, // 102: protowire.GetBlockTemplateResponseMessage.blockMessage:type_name -> protowire.BlockMessage
30, // 103: protowire.GetBlockTemplateResponseMessage.error:type_name -> protowire.RPCError
30, // 104: protowire.NotifyBlockAddedResponseMessage.error:type_name -> protowire.RPCError
10, // 105: protowire.BlockAddedNotificationMessage.block:type_name -> protowire.BlockMessage
42, // 106: protowire.GetPeerAddressesResponseMessage.addresses:type_name -> protowire.GetPeerAddressesKnownAddressMessage
30, // 107: protowire.GetPeerAddressesResponseMessage.error:type_name -> protowire.RPCError
30, // 108: protowire.GetSelectedTipHashResponseMessage.error:type_name -> protowire.RPCError
65, // 109: protowire.MempoolEntry.transactionVerboseData:type_name -> protowire.TransactionVerboseData
45, // 110: protowire.GetMempoolEntryResponseMessage.entry:type_name -> protowire.MempoolEntry
30, // 111: protowire.GetMempoolEntryResponseMessage.error:type_name -> protowire.RPCError
45, // 112: protowire.GetMempoolEntriesResponseMessage.entries:type_name -> protowire.MempoolEntry
30, // 113: protowire.GetMempoolEntriesResponseMessage.error:type_name -> protowire.RPCError
52, // 114: protowire.GetConnectedPeerInfoResponseMessage.infos:type_name -> protowire.GetConnectedPeerInfoMessage
30, // 115: protowire.GetConnectedPeerInfoResponseMessage.error:type_name -> protowire.RPCError
30, // 116: protowire.AddPeerResponseMessage.error:type_name -> protowire.RPCError
5, // 117: protowire.SubmitTransactionRequestMessage.transactionMessage:type_name -> protowire.TransactionMessage
30, // 118: protowire.SubmitTransactionResponseMessage.error:type_name -> protowire.RPCError
30, // 119: protowire.NotifyChainChangedResponseMessage.error:type_name -> protowire.RPCError
60, // 120: protowire.ChainChangedNotificationMessage.addedChainBlocks:type_name -> protowire.ChainBlock
61, // 121: protowire.ChainBlock.acceptedBlocks:type_name -> protowire.AcceptedBlock
64, // 122: protowire.GetBlockResponseMessage.blockVerboseData:type_name -> protowire.BlockVerboseData
30, // 123: protowire.GetBlockResponseMessage.error:type_name -> protowire.RPCError
65, // 124: protowire.BlockVerboseData.transactionVerboseData:type_name -> protowire.TransactionVerboseData
66, // 125: protowire.TransactionVerboseData.transactionVerboseInputs:type_name -> protowire.TransactionVerboseInput
68, // 126: protowire.TransactionVerboseData.transactionVerboseOutputs:type_name -> protowire.TransactionVerboseOutput
67, // 127: protowire.TransactionVerboseInput.scriptSig:type_name -> protowire.ScriptSig
69, // 128: protowire.TransactionVerboseOutput.scriptPubKey:type_name -> protowire.ScriptPubKeyResult
30, // 129: protowire.GetSubnetworkResponseMessage.error:type_name -> protowire.RPCError
60, // 130: protowire.GetChainFromBlockResponseMessage.addedChainBlocks:type_name -> protowire.ChainBlock
64, // 131: protowire.GetChainFromBlockResponseMessage.blockVerboseData:type_name -> protowire.BlockVerboseData
30, // 132: protowire.GetChainFromBlockResponseMessage.error:type_name -> protowire.RPCError
64, // 133: protowire.GetBlocksResponseMessage.blockVerboseData:type_name -> protowire.BlockVerboseData
30, // 134: protowire.GetBlocksResponseMessage.error:type_name -> protowire.RPCError
30, // 135: protowire.GetBlockCountResponseMessage.error:type_name -> protowire.RPCError
30, // 136: protowire.GetBlockDagInfoResponseMessage.error:type_name -> protowire.RPCError
30, // 137: protowire.ResolveFinalityConflictResponseMessage.error:type_name -> protowire.RPCError
30, // 138: protowire.NotifyFinalityConflictsResponseMessage.error:type_name -> protowire.RPCError
30, // 139: protowire.ShutDownResponseMessage.error:type_name -> protowire.RPCError
30, // 140: protowire.GetHeadersResponseMessage.error:type_name -> protowire.RPCError
0, // 141: protowire.P2P.MessageStream:input_type -> protowire.KaspadMessage
0, // 142: protowire.RPC.MessageStream:input_type -> protowire.KaspadMessage
0, // 143: protowire.P2P.MessageStream:output_type -> protowire.KaspadMessage
0, // 144: protowire.RPC.MessageStream:output_type -> protowire.KaspadMessage
143, // [143:145] is the sub-list for method output_type
141, // [141:143] is the sub-list for method input_type
141, // [141:141] is the sub-list for extension type_name
141, // [141:141] is the sub-list for extension extendee
0, // [0:141] is the sub-list for field type_name
}
func init() { file_messages_proto_init() }
func file_messages_proto_init() {
if File_messages_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_messages_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*KaspadMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddressesMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NetAddress); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubnetworkID); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RequestAddressesMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionInput); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Outpoint); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionID); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionOutput); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BlockMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[11].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_messages_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Hash); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RequestBlockLocatorMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BlockLocatorMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RequestIBDBlocksMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RequestNextIBDBlocksMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DoneIBDBlocksMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RequestRelayBlocksMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RequestSelectedTipMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RequestTransactionsMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionNotFoundMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*InvRelayBlockMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*InvTransactionsMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PingMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PongMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SelectedTipMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VerackMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VersionMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RejectMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RPCError); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetCurrentNetworkRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetCurrentNetworkResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubmitBlockRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubmitBlockResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockTemplateRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockTemplateResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NotifyBlockAddedRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NotifyBlockAddedResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BlockAddedNotificationMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetPeerAddressesRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetPeerAddressesResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetPeerAddressesKnownAddressMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetSelectedTipHashRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetSelectedTipHashResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MempoolEntry); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetMempoolEntryRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetMempoolEntryResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetMempoolEntriesRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetMempoolEntriesResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetConnectedPeerInfoRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetConnectedPeerInfoResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetConnectedPeerInfoMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddPeerRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddPeerResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubmitTransactionRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubmitTransactionResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NotifyChainChangedRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NotifyChainChangedResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChainChangedNotificationMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChainBlock); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AcceptedBlock); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BlockVerboseData); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionVerboseData); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionVerboseInput); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ScriptSig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TransactionVerboseOutput); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ScriptPubKeyResult); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetSubnetworkRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetSubnetworkResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetChainFromBlockRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetChainFromBlockResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlocksRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlocksResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockCountRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockCountResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockDagInfoRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBlockDagInfoResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ResolveFinalityConflictRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ResolveFinalityConflictResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NotifyFinalityConflictsRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NotifyFinalityConflictsResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FinalityConflictNotificationMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FinalityConflictResolvedNotificationMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ShutDownRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ShutDownResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetHeadersRequestMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_messages_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetHeadersResponseMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_messages_proto_msgTypes[0].OneofWrappers = []interface{}{
(*KaspadMessage_Addresses)(nil),
(*KaspadMessage_Block)(nil),
(*KaspadMessage_Transaction)(nil),
(*KaspadMessage_RequestBlockLocator)(nil),
(*KaspadMessage_BlockLocator)(nil),
(*KaspadMessage_RequestAddresses)(nil),
(*KaspadMessage_RequestIBDBlocks)(nil),
(*KaspadMessage_RequestNextIBDBlocks)(nil),
(*KaspadMessage_DoneIBDBlocks)(nil),
(*KaspadMessage_RequestRelayBlocks)(nil),
(*KaspadMessage_RequestSelectedTip)(nil),
(*KaspadMessage_RequestTransactions)(nil),
(*KaspadMessage_IbdBlock)(nil),
(*KaspadMessage_InvRelayBlock)(nil),
(*KaspadMessage_InvTransactions)(nil),
(*KaspadMessage_Ping)(nil),
(*KaspadMessage_Pong)(nil),
(*KaspadMessage_SelectedTip)(nil),
(*KaspadMessage_Verack)(nil),
(*KaspadMessage_Version)(nil),
(*KaspadMessage_TransactionNotFound)(nil),
(*KaspadMessage_Reject)(nil),
(*KaspadMessage_GetCurrentNetworkRequest)(nil),
(*KaspadMessage_GetCurrentNetworkResponse)(nil),
(*KaspadMessage_SubmitBlockRequest)(nil),
(*KaspadMessage_SubmitBlockResponse)(nil),
(*KaspadMessage_GetBlockTemplateRequest)(nil),
(*KaspadMessage_GetBlockTemplateResponse)(nil),
(*KaspadMessage_NotifyBlockAddedRequest)(nil),
(*KaspadMessage_NotifyBlockAddedResponse)(nil),
(*KaspadMessage_BlockAddedNotification)(nil),
(*KaspadMessage_GetPeerAddressesRequest)(nil),
(*KaspadMessage_GetPeerAddressesResponse)(nil),
(*KaspadMessage_GetSelectedTipHashRequest)(nil),
(*KaspadMessage_GetSelectedTipHashResponse)(nil),
(*KaspadMessage_GetMempoolEntryRequest)(nil),
(*KaspadMessage_GetMempoolEntryResponse)(nil),
(*KaspadMessage_GetConnectedPeerInfoRequest)(nil),
(*KaspadMessage_GetConnectedPeerInfoResponse)(nil),
(*KaspadMessage_AddPeerRequest)(nil),
(*KaspadMessage_AddPeerResponse)(nil),
(*KaspadMessage_SubmitTransactionRequest)(nil),
(*KaspadMessage_SubmitTransactionResponse)(nil),
(*KaspadMessage_NotifyChainChangedRequest)(nil),
(*KaspadMessage_NotifyChainChangedResponse)(nil),
(*KaspadMessage_ChainChangedNotification)(nil),
(*KaspadMessage_GetBlockRequest)(nil),
(*KaspadMessage_GetBlockResponse)(nil),
(*KaspadMessage_GetSubnetworkRequest)(nil),
(*KaspadMessage_GetSubnetworkResponse)(nil),
(*KaspadMessage_GetChainFromBlockRequest)(nil),
(*KaspadMessage_GetChainFromBlockResponse)(nil),
(*KaspadMessage_GetBlocksRequest)(nil),
(*KaspadMessage_GetBlocksResponse)(nil),
(*KaspadMessage_GetBlockCountRequest)(nil),
(*KaspadMessage_GetBlockCountResponse)(nil),
(*KaspadMessage_GetBlockDagInfoRequest)(nil),
(*KaspadMessage_GetBlockDagInfoResponse)(nil),
(*KaspadMessage_ResolveFinalityConflictRequest)(nil),
(*KaspadMessage_ResolveFinalityConflictResponse)(nil),
(*KaspadMessage_NotifyFinalityConflictsRequest)(nil),
(*KaspadMessage_NotifyFinalityConflictsResponse)(nil),
(*KaspadMessage_FinalityConflictNotification)(nil),
(*KaspadMessage_FinalityConflictResolvedNotification)(nil),
(*KaspadMessage_GetMempoolEntriesRequest)(nil),
(*KaspadMessage_GetMempoolEntriesResponse)(nil),
(*KaspadMessage_ShutDownRequest)(nil),
(*KaspadMessage_ShutDownResponse)(nil),
(*KaspadMessage_GetHeadersRequest)(nil),
(*KaspadMessage_GetHeadersResponse)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_messages_proto_rawDesc,
NumEnums: 0,
NumMessages: 90,
NumExtensions: 0,
NumServices: 2,
},
GoTypes: file_messages_proto_goTypes,
DependencyIndexes: file_messages_proto_depIdxs,
MessageInfos: file_messages_proto_msgTypes,
}.Build()
File_messages_proto = out.File
file_messages_proto_rawDesc = nil
file_messages_proto_goTypes = nil
file_messages_proto_depIdxs = nil
}