// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 // protoc v3.21.12 // source: node.proto package protobufs import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type GetFramesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Filter []byte `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"` FromFrameNumber uint64 `protobuf:"varint,2,opt,name=from_frame_number,json=fromFrameNumber,proto3" json:"from_frame_number,omitempty"` ToFrameNumber uint64 `protobuf:"varint,3,opt,name=to_frame_number,json=toFrameNumber,proto3" json:"to_frame_number,omitempty"` IncludeCandidates bool `protobuf:"varint,4,opt,name=include_candidates,json=includeCandidates,proto3" json:"include_candidates,omitempty"` } func (x *GetFramesRequest) Reset() { *x = GetFramesRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetFramesRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetFramesRequest) ProtoMessage() {} func (x *GetFramesRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 GetFramesRequest.ProtoReflect.Descriptor instead. func (*GetFramesRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{0} } func (x *GetFramesRequest) GetFilter() []byte { if x != nil { return x.Filter } return nil } func (x *GetFramesRequest) GetFromFrameNumber() uint64 { if x != nil { return x.FromFrameNumber } return 0 } func (x *GetFramesRequest) GetToFrameNumber() uint64 { if x != nil { return x.ToFrameNumber } return 0 } func (x *GetFramesRequest) GetIncludeCandidates() bool { if x != nil { return x.IncludeCandidates } return false } type GetFrameInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Filter []byte `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"` FrameNumber uint64 `protobuf:"varint,2,opt,name=frame_number,json=frameNumber,proto3" json:"frame_number,omitempty"` Selector []byte `protobuf:"bytes,3,opt,name=selector,proto3" json:"selector,omitempty"` } func (x *GetFrameInfoRequest) Reset() { *x = GetFrameInfoRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetFrameInfoRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetFrameInfoRequest) ProtoMessage() {} func (x *GetFrameInfoRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 GetFrameInfoRequest.ProtoReflect.Descriptor instead. func (*GetFrameInfoRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{1} } func (x *GetFrameInfoRequest) GetFilter() []byte { if x != nil { return x.Filter } return nil } func (x *GetFrameInfoRequest) GetFrameNumber() uint64 { if x != nil { return x.FrameNumber } return 0 } func (x *GetFrameInfoRequest) GetSelector() []byte { if x != nil { return x.Selector } return nil } type GetPeerInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GetPeerInfoRequest) Reset() { *x = GetPeerInfoRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetPeerInfoRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetPeerInfoRequest) ProtoMessage() {} func (x *GetPeerInfoRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 GetPeerInfoRequest.ProtoReflect.Descriptor instead. func (*GetPeerInfoRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{2} } type GetNodeInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GetNodeInfoRequest) Reset() { *x = GetNodeInfoRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetNodeInfoRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetNodeInfoRequest) ProtoMessage() {} func (x *GetNodeInfoRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 GetNodeInfoRequest.ProtoReflect.Descriptor instead. func (*GetNodeInfoRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{3} } type GetNetworkInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GetNetworkInfoRequest) Reset() { *x = GetNetworkInfoRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetNetworkInfoRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetNetworkInfoRequest) ProtoMessage() {} func (x *GetNetworkInfoRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 GetNetworkInfoRequest.ProtoReflect.Descriptor instead. func (*GetNetworkInfoRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{4} } type FramesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields TruncatedClockFrames []*ClockFrame `protobuf:"bytes,1,rep,name=truncated_clock_frames,json=truncatedClockFrames,proto3" json:"truncated_clock_frames,omitempty"` } func (x *FramesResponse) Reset() { *x = FramesResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FramesResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FramesResponse) ProtoMessage() {} func (x *FramesResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 FramesResponse.ProtoReflect.Descriptor instead. func (*FramesResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{5} } func (x *FramesResponse) GetTruncatedClockFrames() []*ClockFrame { if x != nil { return x.TruncatedClockFrames } return nil } type FrameInfoResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ClockFrame *ClockFrame `protobuf:"bytes,1,opt,name=clock_frame,json=clockFrame,proto3" json:"clock_frame,omitempty"` } func (x *FrameInfoResponse) Reset() { *x = FrameInfoResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FrameInfoResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FrameInfoResponse) ProtoMessage() {} func (x *FrameInfoResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 FrameInfoResponse.ProtoReflect.Descriptor instead. func (*FrameInfoResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{6} } func (x *FrameInfoResponse) GetClockFrame() *ClockFrame { if x != nil { return x.ClockFrame } return nil } type PeerInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` Multiaddrs []string `protobuf:"bytes,2,rep,name=multiaddrs,proto3" json:"multiaddrs,omitempty"` MaxFrame uint64 `protobuf:"varint,3,opt,name=max_frame,json=maxFrame,proto3" json:"max_frame,omitempty"` Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` Version []byte `protobuf:"bytes,5,opt,name=version,proto3" json:"version,omitempty"` Signature []byte `protobuf:"bytes,6,opt,name=signature,proto3" json:"signature,omitempty"` PublicKey []byte `protobuf:"bytes,7,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` TotalDistance []byte `protobuf:"bytes,8,opt,name=total_distance,json=totalDistance,proto3" json:"total_distance,omitempty"` } func (x *PeerInfo) Reset() { *x = PeerInfo{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PeerInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*PeerInfo) ProtoMessage() {} func (x *PeerInfo) ProtoReflect() protoreflect.Message { mi := &file_node_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 PeerInfo.ProtoReflect.Descriptor instead. func (*PeerInfo) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{7} } func (x *PeerInfo) GetPeerId() []byte { if x != nil { return x.PeerId } return nil } func (x *PeerInfo) GetMultiaddrs() []string { if x != nil { return x.Multiaddrs } return nil } func (x *PeerInfo) GetMaxFrame() uint64 { if x != nil { return x.MaxFrame } return 0 } func (x *PeerInfo) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } func (x *PeerInfo) GetVersion() []byte { if x != nil { return x.Version } return nil } func (x *PeerInfo) GetSignature() []byte { if x != nil { return x.Signature } return nil } func (x *PeerInfo) GetPublicKey() []byte { if x != nil { return x.PublicKey } return nil } func (x *PeerInfo) GetTotalDistance() []byte { if x != nil { return x.TotalDistance } return nil } type PeerInfoResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerInfo []*PeerInfo `protobuf:"bytes,1,rep,name=peer_info,json=peerInfo,proto3" json:"peer_info,omitempty"` UncooperativePeerInfo []*PeerInfo `protobuf:"bytes,2,rep,name=uncooperative_peer_info,json=uncooperativePeerInfo,proto3" json:"uncooperative_peer_info,omitempty"` } func (x *PeerInfoResponse) Reset() { *x = PeerInfoResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PeerInfoResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PeerInfoResponse) ProtoMessage() {} func (x *PeerInfoResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 PeerInfoResponse.ProtoReflect.Descriptor instead. func (*PeerInfoResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{8} } func (x *PeerInfoResponse) GetPeerInfo() []*PeerInfo { if x != nil { return x.PeerInfo } return nil } func (x *PeerInfoResponse) GetUncooperativePeerInfo() []*PeerInfo { if x != nil { return x.UncooperativePeerInfo } return nil } type NetworkInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` Multiaddrs []string `protobuf:"bytes,2,rep,name=multiaddrs,proto3" json:"multiaddrs,omitempty"` PeerScore float64 `protobuf:"fixed64,3,opt,name=peer_score,json=peerScore,proto3" json:"peer_score,omitempty"` } func (x *NetworkInfo) Reset() { *x = NetworkInfo{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkInfo) ProtoMessage() {} func (x *NetworkInfo) ProtoReflect() protoreflect.Message { mi := &file_node_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 NetworkInfo.ProtoReflect.Descriptor instead. func (*NetworkInfo) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{9} } func (x *NetworkInfo) GetPeerId() []byte { if x != nil { return x.PeerId } return nil } func (x *NetworkInfo) GetMultiaddrs() []string { if x != nil { return x.Multiaddrs } return nil } func (x *NetworkInfo) GetPeerScore() float64 { if x != nil { return x.PeerScore } return 0 } type NodeInfoResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerId string `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` MaxFrame uint64 `protobuf:"varint,2,opt,name=max_frame,json=maxFrame,proto3" json:"max_frame,omitempty"` PeerScore uint64 `protobuf:"varint,3,opt,name=peer_score,json=peerScore,proto3" json:"peer_score,omitempty"` Version []byte `protobuf:"bytes,4,opt,name=version,proto3" json:"version,omitempty"` } func (x *NodeInfoResponse) Reset() { *x = NodeInfoResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NodeInfoResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*NodeInfoResponse) ProtoMessage() {} func (x *NodeInfoResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 NodeInfoResponse.ProtoReflect.Descriptor instead. func (*NodeInfoResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{10} } func (x *NodeInfoResponse) GetPeerId() string { if x != nil { return x.PeerId } return "" } func (x *NodeInfoResponse) GetMaxFrame() uint64 { if x != nil { return x.MaxFrame } return 0 } func (x *NodeInfoResponse) GetPeerScore() uint64 { if x != nil { return x.PeerScore } return 0 } func (x *NodeInfoResponse) GetVersion() []byte { if x != nil { return x.Version } return nil } type PutPeerInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerInfo []*PeerInfo `protobuf:"bytes,1,rep,name=peer_info,json=peerInfo,proto3" json:"peer_info,omitempty"` UncooperativePeerInfo []*PeerInfo `protobuf:"bytes,2,rep,name=uncooperative_peer_info,json=uncooperativePeerInfo,proto3" json:"uncooperative_peer_info,omitempty"` } func (x *PutPeerInfoRequest) Reset() { *x = PutPeerInfoRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PutPeerInfoRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PutPeerInfoRequest) ProtoMessage() {} func (x *PutPeerInfoRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 PutPeerInfoRequest.ProtoReflect.Descriptor instead. func (*PutPeerInfoRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{11} } func (x *PutPeerInfoRequest) GetPeerInfo() []*PeerInfo { if x != nil { return x.PeerInfo } return nil } func (x *PutPeerInfoRequest) GetUncooperativePeerInfo() []*PeerInfo { if x != nil { return x.UncooperativePeerInfo } return nil } type PutNodeInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerId string `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` MaxFrame uint64 `protobuf:"varint,2,opt,name=max_frame,json=maxFrame,proto3" json:"max_frame,omitempty"` PeerScore uint64 `protobuf:"varint,3,opt,name=peer_score,json=peerScore,proto3" json:"peer_score,omitempty"` Signature []byte `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *PutNodeInfoRequest) Reset() { *x = PutNodeInfoRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PutNodeInfoRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PutNodeInfoRequest) ProtoMessage() {} func (x *PutNodeInfoRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 PutNodeInfoRequest.ProtoReflect.Descriptor instead. func (*PutNodeInfoRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{12} } func (x *PutNodeInfoRequest) GetPeerId() string { if x != nil { return x.PeerId } return "" } func (x *PutNodeInfoRequest) GetMaxFrame() uint64 { if x != nil { return x.MaxFrame } return 0 } func (x *PutNodeInfoRequest) GetPeerScore() uint64 { if x != nil { return x.PeerScore } return 0 } func (x *PutNodeInfoRequest) GetSignature() []byte { if x != nil { return x.Signature } return nil } type PutResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *PutResponse) Reset() { *x = PutResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PutResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PutResponse) ProtoMessage() {} func (x *PutResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 PutResponse.ProtoReflect.Descriptor instead. func (*PutResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{13} } type NetworkInfoResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields NetworkInfo []*NetworkInfo `protobuf:"bytes,1,rep,name=network_info,json=networkInfo,proto3" json:"network_info,omitempty"` } func (x *NetworkInfoResponse) Reset() { *x = NetworkInfoResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkInfoResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkInfoResponse) ProtoMessage() {} func (x *NetworkInfoResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 NetworkInfoResponse.ProtoReflect.Descriptor instead. func (*NetworkInfoResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{14} } func (x *NetworkInfoResponse) GetNetworkInfo() []*NetworkInfo { if x != nil { return x.NetworkInfo } return nil } type GetTokenInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GetTokenInfoRequest) Reset() { *x = GetTokenInfoRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetTokenInfoRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetTokenInfoRequest) ProtoMessage() {} func (x *GetTokenInfoRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 GetTokenInfoRequest.ProtoReflect.Descriptor instead. func (*GetTokenInfoRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{15} } type TokenInfoResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Total active token supply, as a 256 bit integer representing maximum // divisble units. 1 QUIL = 8000000000 units, 50 QUIL would be represented by // 0x0000000000000000000000000000000000000000000000000000005D21DBA000 ConfirmedTokenSupply []byte `protobuf:"bytes,1,opt,name=confirmed_token_supply,json=confirmedTokenSupply,proto3" json:"confirmed_token_supply,omitempty"` // Total token supply, including unconfirmed frame data, as a 256 bit integer. UnconfirmedTokenSupply []byte `protobuf:"bytes,2,opt,name=unconfirmed_token_supply,json=unconfirmedTokenSupply,proto3" json:"unconfirmed_token_supply,omitempty"` // The total number of tokens owned by the prover address associated with the // node. OwnedTokens []byte `protobuf:"bytes,3,opt,name=owned_tokens,json=ownedTokens,proto3" json:"owned_tokens,omitempty"` // The total number of tokens owned by the prover address associated with the // node, including unconfirmed frame data. UnconfirmedOwnedTokens []byte `protobuf:"bytes,4,opt,name=unconfirmed_owned_tokens,json=unconfirmedOwnedTokens,proto3" json:"unconfirmed_owned_tokens,omitempty"` } func (x *TokenInfoResponse) Reset() { *x = TokenInfoResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TokenInfoResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*TokenInfoResponse) ProtoMessage() {} func (x *TokenInfoResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 TokenInfoResponse.ProtoReflect.Descriptor instead. func (*TokenInfoResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{16} } func (x *TokenInfoResponse) GetConfirmedTokenSupply() []byte { if x != nil { return x.ConfirmedTokenSupply } return nil } func (x *TokenInfoResponse) GetUnconfirmedTokenSupply() []byte { if x != nil { return x.UnconfirmedTokenSupply } return nil } func (x *TokenInfoResponse) GetOwnedTokens() []byte { if x != nil { return x.OwnedTokens } return nil } func (x *TokenInfoResponse) GetUnconfirmedOwnedTokens() []byte { if x != nil { return x.UnconfirmedOwnedTokens } return nil } type Capability struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // A general protocol identifier as a uint32 – this is expected to rarely // iterate, and should be uniquely identifying both protocol and version. // Pragmatically speaking, this implies that the least significant byte // specifies version (which should iterate most minimally), and the three most // significant bytes should specify protocol. Recipients SHOULD ignore // messages with incompatible protocol identifiers, but also SHOULD warn on // identifiers with versions higher than the supported protocol. A large // number of unsupported protocol messages may indicate spam/some other // attack, whereas a large number of unsupported protocol versions may // indicate an out of date client, respective to which side is the maximum of // the version number. ProtocolIdentifier uint32 `protobuf:"varint,1,opt,name=protocol_identifier,json=protocolIdentifier,proto3" json:"protocol_identifier,omitempty"` // An optional bundle of information specific to the capability – used for // extensibility in negotiating variations of a protocol – e.g. Triple-Ratchet // but only for certain curve types. AdditionalMetadata []byte `protobuf:"bytes,2,opt,name=additional_metadata,json=additionalMetadata,proto3" json:"additional_metadata,omitempty"` } func (x *Capability) Reset() { *x = Capability{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Capability) String() string { return protoimpl.X.MessageStringOf(x) } func (*Capability) ProtoMessage() {} func (x *Capability) ProtoReflect() protoreflect.Message { mi := &file_node_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 Capability.ProtoReflect.Descriptor instead. func (*Capability) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{17} } func (x *Capability) GetProtocolIdentifier() uint32 { if x != nil { return x.ProtocolIdentifier } return 0 } func (x *Capability) GetAdditionalMetadata() []byte { if x != nil { return x.AdditionalMetadata } return nil } type SelfTestReport struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // The number of reported accessible cores Cores uint32 `protobuf:"varint,1,opt,name=cores,proto3" json:"cores,omitempty"` // The total available memory Memory []byte `protobuf:"bytes,2,opt,name=memory,proto3" json:"memory,omitempty"` // The total available storage Storage []byte `protobuf:"bytes,3,opt,name=storage,proto3" json:"storage,omitempty"` // The list of supported capabilities Capabilities []*Capability `protobuf:"bytes,4,rep,name=capabilities,proto3" json:"capabilities,omitempty"` // The highest master frame the node has MasterHeadFrame uint64 `protobuf:"varint,5,opt,name=master_head_frame,json=masterHeadFrame,proto3" json:"master_head_frame,omitempty"` // The bit slice declaring prover range ProverRange []byte `protobuf:"bytes,6,opt,name=prover_range,json=proverRange,proto3" json:"prover_range,omitempty"` } func (x *SelfTestReport) Reset() { *x = SelfTestReport{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SelfTestReport) String() string { return protoimpl.X.MessageStringOf(x) } func (*SelfTestReport) ProtoMessage() {} func (x *SelfTestReport) ProtoReflect() protoreflect.Message { mi := &file_node_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 SelfTestReport.ProtoReflect.Descriptor instead. func (*SelfTestReport) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{18} } func (x *SelfTestReport) GetCores() uint32 { if x != nil { return x.Cores } return 0 } func (x *SelfTestReport) GetMemory() []byte { if x != nil { return x.Memory } return nil } func (x *SelfTestReport) GetStorage() []byte { if x != nil { return x.Storage } return nil } func (x *SelfTestReport) GetCapabilities() []*Capability { if x != nil { return x.Capabilities } return nil } func (x *SelfTestReport) GetMasterHeadFrame() uint64 { if x != nil { return x.MasterHeadFrame } return 0 } func (x *SelfTestReport) GetProverRange() []byte { if x != nil { return x.ProverRange } return nil } type ValidationMessage struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Validation []byte `protobuf:"bytes,1,opt,name=validation,proto3" json:"validation,omitempty"` } func (x *ValidationMessage) Reset() { *x = ValidationMessage{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ValidationMessage) String() string { return protoimpl.X.MessageStringOf(x) } func (*ValidationMessage) ProtoMessage() {} func (x *ValidationMessage) ProtoReflect() protoreflect.Message { mi := &file_node_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 ValidationMessage.ProtoReflect.Descriptor instead. func (*ValidationMessage) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{19} } func (x *ValidationMessage) GetValidation() []byte { if x != nil { return x.Validation } return nil } type SyncRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields FramesRequest *ClockFramesRequest `protobuf:"bytes,1,opt,name=frames_request,json=framesRequest,proto3" json:"frames_request,omitempty"` } func (x *SyncRequest) Reset() { *x = SyncRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SyncRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncRequest) ProtoMessage() {} func (x *SyncRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 SyncRequest.ProtoReflect.Descriptor instead. func (*SyncRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{20} } func (x *SyncRequest) GetFramesRequest() *ClockFramesRequest { if x != nil { return x.FramesRequest } return nil } type SyncResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields FramesResponse *ClockFramesResponse `protobuf:"bytes,1,opt,name=frames_response,json=framesResponse,proto3" json:"frames_response,omitempty"` } func (x *SyncResponse) Reset() { *x = SyncResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SyncResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncResponse) ProtoMessage() {} func (x *SyncResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 SyncResponse.ProtoReflect.Descriptor instead. func (*SyncResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{21} } func (x *SyncResponse) GetFramesResponse() *ClockFramesResponse { if x != nil { return x.FramesResponse } return nil } type GetPeerManifestsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GetPeerManifestsRequest) Reset() { *x = GetPeerManifestsRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetPeerManifestsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetPeerManifestsRequest) ProtoMessage() {} func (x *GetPeerManifestsRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 GetPeerManifestsRequest.ProtoReflect.Descriptor instead. func (*GetPeerManifestsRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{22} } type PeerManifest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerId []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` // The number of reported accessible cores Cores uint32 `protobuf:"varint,2,opt,name=cores,proto3" json:"cores,omitempty"` // The total available memory Memory []byte `protobuf:"bytes,3,opt,name=memory,proto3" json:"memory,omitempty"` // The total available storage Storage []byte `protobuf:"bytes,4,opt,name=storage,proto3" json:"storage,omitempty"` // The list of supported capabilities Capabilities []*Capability `protobuf:"bytes,5,rep,name=capabilities,proto3" json:"capabilities,omitempty"` // The highest master frame the node has MasterHeadFrame uint64 `protobuf:"varint,6,opt,name=master_head_frame,json=masterHeadFrame,proto3" json:"master_head_frame,omitempty"` // The last time seen tick LastSeen int64 `protobuf:"varint,7,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen,omitempty"` // The increment of the node Increment uint32 `protobuf:"varint,8,opt,name=increment,proto3" json:"increment,omitempty"` } func (x *PeerManifest) Reset() { *x = PeerManifest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PeerManifest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PeerManifest) ProtoMessage() {} func (x *PeerManifest) ProtoReflect() protoreflect.Message { mi := &file_node_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 PeerManifest.ProtoReflect.Descriptor instead. func (*PeerManifest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{23} } func (x *PeerManifest) GetPeerId() []byte { if x != nil { return x.PeerId } return nil } func (x *PeerManifest) GetCores() uint32 { if x != nil { return x.Cores } return 0 } func (x *PeerManifest) GetMemory() []byte { if x != nil { return x.Memory } return nil } func (x *PeerManifest) GetStorage() []byte { if x != nil { return x.Storage } return nil } func (x *PeerManifest) GetCapabilities() []*Capability { if x != nil { return x.Capabilities } return nil } func (x *PeerManifest) GetMasterHeadFrame() uint64 { if x != nil { return x.MasterHeadFrame } return 0 } func (x *PeerManifest) GetLastSeen() int64 { if x != nil { return x.LastSeen } return 0 } func (x *PeerManifest) GetIncrement() uint32 { if x != nil { return x.Increment } return 0 } type AnnounceProverRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PublicKeySignaturesEd448 []*Ed448Signature `protobuf:"bytes,1,rep,name=public_key_signatures_ed448,json=publicKeySignaturesEd448,proto3" json:"public_key_signatures_ed448,omitempty"` InitialProof *MintCoinRequest `protobuf:"bytes,2,opt,name=initial_proof,json=initialProof,proto3" json:"initial_proof,omitempty"` } func (x *AnnounceProverRequest) Reset() { *x = AnnounceProverRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AnnounceProverRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AnnounceProverRequest) ProtoMessage() {} func (x *AnnounceProverRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 AnnounceProverRequest.ProtoReflect.Descriptor instead. func (*AnnounceProverRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{24} } func (x *AnnounceProverRequest) GetPublicKeySignaturesEd448() []*Ed448Signature { if x != nil { return x.PublicKeySignaturesEd448 } return nil } func (x *AnnounceProverRequest) GetInitialProof() *MintCoinRequest { if x != nil { return x.InitialProof } return nil } type OriginatedAccountRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` } func (x *OriginatedAccountRef) Reset() { *x = OriginatedAccountRef{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *OriginatedAccountRef) String() string { return protoimpl.X.MessageStringOf(x) } func (*OriginatedAccountRef) ProtoMessage() {} func (x *OriginatedAccountRef) ProtoReflect() protoreflect.Message { mi := &file_node_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 OriginatedAccountRef.ProtoReflect.Descriptor instead. func (*OriginatedAccountRef) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{25} } func (x *OriginatedAccountRef) GetAddress() []byte { if x != nil { return x.Address } return nil } type ImplicitAccount struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ImplicitType uint32 `protobuf:"varint,1,opt,name=implicit_type,json=implicitType,proto3" json:"implicit_type,omitempty"` Address []byte `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` Domain []byte `protobuf:"bytes,3,opt,name=domain,proto3" json:"domain,omitempty"` } func (x *ImplicitAccount) Reset() { *x = ImplicitAccount{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ImplicitAccount) String() string { return protoimpl.X.MessageStringOf(x) } func (*ImplicitAccount) ProtoMessage() {} func (x *ImplicitAccount) ProtoReflect() protoreflect.Message { mi := &file_node_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 ImplicitAccount.ProtoReflect.Descriptor instead. func (*ImplicitAccount) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{26} } func (x *ImplicitAccount) GetImplicitType() uint32 { if x != nil { return x.ImplicitType } return 0 } func (x *ImplicitAccount) GetAddress() []byte { if x != nil { return x.Address } return nil } func (x *ImplicitAccount) GetDomain() []byte { if x != nil { return x.Domain } return nil } type AccountRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Types that are assignable to Account: // // *AccountRef_OriginatedAccount // *AccountRef_ImplicitAccount Account isAccountRef_Account `protobuf_oneof:"account"` } func (x *AccountRef) Reset() { *x = AccountRef{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AccountRef) String() string { return protoimpl.X.MessageStringOf(x) } func (*AccountRef) ProtoMessage() {} func (x *AccountRef) ProtoReflect() protoreflect.Message { mi := &file_node_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 AccountRef.ProtoReflect.Descriptor instead. func (*AccountRef) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{27} } func (m *AccountRef) GetAccount() isAccountRef_Account { if m != nil { return m.Account } return nil } func (x *AccountRef) GetOriginatedAccount() *OriginatedAccountRef { if x, ok := x.GetAccount().(*AccountRef_OriginatedAccount); ok { return x.OriginatedAccount } return nil } func (x *AccountRef) GetImplicitAccount() *ImplicitAccount { if x, ok := x.GetAccount().(*AccountRef_ImplicitAccount); ok { return x.ImplicitAccount } return nil } type isAccountRef_Account interface { isAccountRef_Account() } type AccountRef_OriginatedAccount struct { OriginatedAccount *OriginatedAccountRef `protobuf:"bytes,1,opt,name=originated_account,json=originatedAccount,proto3,oneof"` } type AccountRef_ImplicitAccount struct { ImplicitAccount *ImplicitAccount `protobuf:"bytes,2,opt,name=implicit_account,json=implicitAccount,proto3,oneof"` } func (*AccountRef_OriginatedAccount) isAccountRef_Account() {} func (*AccountRef_ImplicitAccount) isAccountRef_Account() {} type AccountAllowanceRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` } func (x *AccountAllowanceRef) Reset() { *x = AccountAllowanceRef{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AccountAllowanceRef) String() string { return protoimpl.X.MessageStringOf(x) } func (*AccountAllowanceRef) ProtoMessage() {} func (x *AccountAllowanceRef) ProtoReflect() protoreflect.Message { mi := &file_node_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 AccountAllowanceRef.ProtoReflect.Descriptor instead. func (*AccountAllowanceRef) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{28} } func (x *AccountAllowanceRef) GetAddress() []byte { if x != nil { return x.Address } return nil } type CoinAllowanceRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` } func (x *CoinAllowanceRef) Reset() { *x = CoinAllowanceRef{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CoinAllowanceRef) String() string { return protoimpl.X.MessageStringOf(x) } func (*CoinAllowanceRef) ProtoMessage() {} func (x *CoinAllowanceRef) ProtoReflect() protoreflect.Message { mi := &file_node_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 CoinAllowanceRef.ProtoReflect.Descriptor instead. func (*CoinAllowanceRef) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{29} } func (x *CoinAllowanceRef) GetAddress() []byte { if x != nil { return x.Address } return nil } type Coin struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Amount []byte `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"` Intersection []byte `protobuf:"bytes,2,opt,name=intersection,proto3" json:"intersection,omitempty"` Owner *AccountRef `protobuf:"bytes,3,opt,name=owner,proto3" json:"owner,omitempty"` } func (x *Coin) Reset() { *x = Coin{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Coin) String() string { return protoimpl.X.MessageStringOf(x) } func (*Coin) ProtoMessage() {} func (x *Coin) ProtoReflect() protoreflect.Message { mi := &file_node_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 Coin.ProtoReflect.Descriptor instead. func (*Coin) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{30} } func (x *Coin) GetAmount() []byte { if x != nil { return x.Amount } return nil } func (x *Coin) GetIntersection() []byte { if x != nil { return x.Intersection } return nil } func (x *Coin) GetOwner() *AccountRef { if x != nil { return x.Owner } return nil } type TokenRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Types that are assignable to Request: // // *TokenRequest_Transfer // *TokenRequest_Split // *TokenRequest_Merge // *TokenRequest_Mint // *TokenRequest_Announce Request isTokenRequest_Request `protobuf_oneof:"request"` } func (x *TokenRequest) Reset() { *x = TokenRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TokenRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*TokenRequest) ProtoMessage() {} func (x *TokenRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 TokenRequest.ProtoReflect.Descriptor instead. func (*TokenRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{31} } func (m *TokenRequest) GetRequest() isTokenRequest_Request { if m != nil { return m.Request } return nil } func (x *TokenRequest) GetTransfer() *TransferCoinRequest { if x, ok := x.GetRequest().(*TokenRequest_Transfer); ok { return x.Transfer } return nil } func (x *TokenRequest) GetSplit() *SplitCoinRequest { if x, ok := x.GetRequest().(*TokenRequest_Split); ok { return x.Split } return nil } func (x *TokenRequest) GetMerge() *MergeCoinRequest { if x, ok := x.GetRequest().(*TokenRequest_Merge); ok { return x.Merge } return nil } func (x *TokenRequest) GetMint() *MintCoinRequest { if x, ok := x.GetRequest().(*TokenRequest_Mint); ok { return x.Mint } return nil } func (x *TokenRequest) GetAnnounce() *AnnounceProverRequest { if x, ok := x.GetRequest().(*TokenRequest_Announce); ok { return x.Announce } return nil } type isTokenRequest_Request interface { isTokenRequest_Request() } type TokenRequest_Transfer struct { Transfer *TransferCoinRequest `protobuf:"bytes,1,opt,name=transfer,proto3,oneof"` } type TokenRequest_Split struct { Split *SplitCoinRequest `protobuf:"bytes,2,opt,name=split,proto3,oneof"` } type TokenRequest_Merge struct { Merge *MergeCoinRequest `protobuf:"bytes,3,opt,name=merge,proto3,oneof"` } type TokenRequest_Mint struct { Mint *MintCoinRequest `protobuf:"bytes,4,opt,name=mint,proto3,oneof"` } type TokenRequest_Announce struct { Announce *AnnounceProverRequest `protobuf:"bytes,5,opt,name=announce,proto3,oneof"` } func (*TokenRequest_Transfer) isTokenRequest_Request() {} func (*TokenRequest_Split) isTokenRequest_Request() {} func (*TokenRequest_Merge) isTokenRequest_Request() {} func (*TokenRequest_Mint) isTokenRequest_Request() {} func (*TokenRequest_Announce) isTokenRequest_Request() {} type TokenRequests struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Requests []*TokenRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` } func (x *TokenRequests) Reset() { *x = TokenRequests{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TokenRequests) String() string { return protoimpl.X.MessageStringOf(x) } func (*TokenRequests) ProtoMessage() {} func (x *TokenRequests) ProtoReflect() protoreflect.Message { mi := &file_node_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 TokenRequests.ProtoReflect.Descriptor instead. func (*TokenRequests) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{32} } func (x *TokenRequests) GetRequests() []*TokenRequest { if x != nil { return x.Requests } return nil } type PreCoinProof struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Amount []byte `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"` Index uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"` IndexProof []byte `protobuf:"bytes,3,opt,name=indexProof,proto3" json:"indexProof,omitempty"` Commitment []byte `protobuf:"bytes,4,opt,name=commitment,proto3" json:"commitment,omitempty"` Proof []byte `protobuf:"bytes,5,opt,name=proof,proto3" json:"proof,omitempty"` Parallelism uint32 `protobuf:"varint,6,opt,name=parallelism,proto3" json:"parallelism,omitempty"` Difficulty uint32 `protobuf:"varint,7,opt,name=difficulty,proto3" json:"difficulty,omitempty"` Owner *AccountRef `protobuf:"bytes,8,opt,name=owner,proto3" json:"owner,omitempty"` } func (x *PreCoinProof) Reset() { *x = PreCoinProof{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PreCoinProof) String() string { return protoimpl.X.MessageStringOf(x) } func (*PreCoinProof) ProtoMessage() {} func (x *PreCoinProof) ProtoReflect() protoreflect.Message { mi := &file_node_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 PreCoinProof.ProtoReflect.Descriptor instead. func (*PreCoinProof) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{33} } func (x *PreCoinProof) GetAmount() []byte { if x != nil { return x.Amount } return nil } func (x *PreCoinProof) GetIndex() uint32 { if x != nil { return x.Index } return 0 } func (x *PreCoinProof) GetIndexProof() []byte { if x != nil { return x.IndexProof } return nil } func (x *PreCoinProof) GetCommitment() []byte { if x != nil { return x.Commitment } return nil } func (x *PreCoinProof) GetProof() []byte { if x != nil { return x.Proof } return nil } func (x *PreCoinProof) GetParallelism() uint32 { if x != nil { return x.Parallelism } return 0 } func (x *PreCoinProof) GetDifficulty() uint32 { if x != nil { return x.Difficulty } return 0 } func (x *PreCoinProof) GetOwner() *AccountRef { if x != nil { return x.Owner } return nil } type TokenOutput struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Types that are assignable to Output: // // *TokenOutput_Coin // *TokenOutput_Proof // *TokenOutput_DeletedCoin // *TokenOutput_DeletedProof Output isTokenOutput_Output `protobuf_oneof:"output"` } func (x *TokenOutput) Reset() { *x = TokenOutput{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TokenOutput) String() string { return protoimpl.X.MessageStringOf(x) } func (*TokenOutput) ProtoMessage() {} func (x *TokenOutput) ProtoReflect() protoreflect.Message { mi := &file_node_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 TokenOutput.ProtoReflect.Descriptor instead. func (*TokenOutput) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{34} } func (m *TokenOutput) GetOutput() isTokenOutput_Output { if m != nil { return m.Output } return nil } func (x *TokenOutput) GetCoin() *Coin { if x, ok := x.GetOutput().(*TokenOutput_Coin); ok { return x.Coin } return nil } func (x *TokenOutput) GetProof() *PreCoinProof { if x, ok := x.GetOutput().(*TokenOutput_Proof); ok { return x.Proof } return nil } func (x *TokenOutput) GetDeletedCoin() *Coin { if x, ok := x.GetOutput().(*TokenOutput_DeletedCoin); ok { return x.DeletedCoin } return nil } func (x *TokenOutput) GetDeletedProof() *PreCoinProof { if x, ok := x.GetOutput().(*TokenOutput_DeletedProof); ok { return x.DeletedProof } return nil } type isTokenOutput_Output interface { isTokenOutput_Output() } type TokenOutput_Coin struct { Coin *Coin `protobuf:"bytes,1,opt,name=coin,proto3,oneof"` } type TokenOutput_Proof struct { Proof *PreCoinProof `protobuf:"bytes,2,opt,name=proof,proto3,oneof"` } type TokenOutput_DeletedCoin struct { DeletedCoin *Coin `protobuf:"bytes,3,opt,name=deleted_coin,json=deletedCoin,proto3,oneof"` } type TokenOutput_DeletedProof struct { DeletedProof *PreCoinProof `protobuf:"bytes,4,opt,name=deleted_proof,json=deletedProof,proto3,oneof"` } func (*TokenOutput_Coin) isTokenOutput_Output() {} func (*TokenOutput_Proof) isTokenOutput_Output() {} func (*TokenOutput_DeletedCoin) isTokenOutput_Output() {} func (*TokenOutput_DeletedProof) isTokenOutput_Output() {} type TokenOutputs struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Outputs []*TokenOutput `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"` } func (x *TokenOutputs) Reset() { *x = TokenOutputs{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TokenOutputs) String() string { return protoimpl.X.MessageStringOf(x) } func (*TokenOutputs) ProtoMessage() {} func (x *TokenOutputs) ProtoReflect() protoreflect.Message { mi := &file_node_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 TokenOutputs.ProtoReflect.Descriptor instead. func (*TokenOutputs) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{35} } func (x *TokenOutputs) GetOutputs() []*TokenOutput { if x != nil { return x.Outputs } return nil } type CoinRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` } func (x *CoinRef) Reset() { *x = CoinRef{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CoinRef) String() string { return protoimpl.X.MessageStringOf(x) } func (*CoinRef) ProtoMessage() {} func (x *CoinRef) ProtoReflect() protoreflect.Message { mi := &file_node_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 CoinRef.ProtoReflect.Descriptor instead. func (*CoinRef) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{36} } func (x *CoinRef) GetAddress() []byte { if x != nil { return x.Address } return nil } type PendingTransactionRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` } func (x *PendingTransactionRef) Reset() { *x = PendingTransactionRef{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PendingTransactionRef) String() string { return protoimpl.X.MessageStringOf(x) } func (*PendingTransactionRef) ProtoMessage() {} func (x *PendingTransactionRef) ProtoReflect() protoreflect.Message { mi := &file_node_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 PendingTransactionRef.ProtoReflect.Descriptor instead. func (*PendingTransactionRef) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{37} } func (x *PendingTransactionRef) GetAddress() []byte { if x != nil { return x.Address } return nil } type KeyRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` } func (x *KeyRef) Reset() { *x = KeyRef{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *KeyRef) String() string { return protoimpl.X.MessageStringOf(x) } func (*KeyRef) ProtoMessage() {} func (x *KeyRef) ProtoReflect() protoreflect.Message { mi := &file_node_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 KeyRef.ProtoReflect.Descriptor instead. func (*KeyRef) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{38} } func (x *KeyRef) GetAddress() []byte { if x != nil { return x.Address } return nil } type Signature struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields SignatureType uint32 `protobuf:"varint,1,opt,name=signature_type,json=signatureType,proto3" json:"signature_type,omitempty"` Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` Key *KeyRef `protobuf:"bytes,3,opt,name=key,proto3" json:"key,omitempty"` } func (x *Signature) Reset() { *x = Signature{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Signature) String() string { return protoimpl.X.MessageStringOf(x) } func (*Signature) ProtoMessage() {} func (x *Signature) ProtoReflect() protoreflect.Message { mi := &file_node_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 Signature.ProtoReflect.Descriptor instead. func (*Signature) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{39} } func (x *Signature) GetSignatureType() uint32 { if x != nil { return x.SignatureType } return 0 } func (x *Signature) GetSignature() []byte { if x != nil { return x.Signature } return nil } func (x *Signature) GetKey() *KeyRef { if x != nil { return x.Key } return nil } type PeerManifestsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PeerManifests []*PeerManifest `protobuf:"bytes,1,rep,name=peer_manifests,json=peerManifests,proto3" json:"peer_manifests,omitempty"` } func (x *PeerManifestsResponse) Reset() { *x = PeerManifestsResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PeerManifestsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PeerManifestsResponse) ProtoMessage() {} func (x *PeerManifestsResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 PeerManifestsResponse.ProtoReflect.Descriptor instead. func (*PeerManifestsResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{40} } func (x *PeerManifestsResponse) GetPeerManifests() []*PeerManifest { if x != nil { return x.PeerManifests } return nil } type AcceptPendingTransactionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PendingTransaction *PendingTransactionRef `protobuf:"bytes,1,opt,name=pending_transaction,json=pendingTransaction,proto3" json:"pending_transaction,omitempty"` Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *AcceptPendingTransactionRequest) Reset() { *x = AcceptPendingTransactionRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AcceptPendingTransactionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AcceptPendingTransactionRequest) ProtoMessage() {} func (x *AcceptPendingTransactionRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 AcceptPendingTransactionRequest.ProtoReflect.Descriptor instead. func (*AcceptPendingTransactionRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{41} } func (x *AcceptPendingTransactionRequest) GetPendingTransaction() *PendingTransactionRef { if x != nil { return x.PendingTransaction } return nil } func (x *AcceptPendingTransactionRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type AllowAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields OfAccount *AccountRef `protobuf:"bytes,1,opt,name=of_account,json=ofAccount,proto3" json:"of_account,omitempty"` PermittedAccount *AccountRef `protobuf:"bytes,2,opt,name=permitted_account,json=permittedAccount,proto3" json:"permitted_account,omitempty"` PermittedOperations []string `protobuf:"bytes,3,rep,name=permitted_operations,json=permittedOperations,proto3" json:"permitted_operations,omitempty"` Allowance *AccountAllowanceRef `protobuf:"bytes,4,opt,name=allowance,proto3" json:"allowance,omitempty"` Signature *Signature `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *AllowAccountRequest) Reset() { *x = AllowAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AllowAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AllowAccountRequest) ProtoMessage() {} func (x *AllowAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 AllowAccountRequest.ProtoReflect.Descriptor instead. func (*AllowAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{42} } func (x *AllowAccountRequest) GetOfAccount() *AccountRef { if x != nil { return x.OfAccount } return nil } func (x *AllowAccountRequest) GetPermittedAccount() *AccountRef { if x != nil { return x.PermittedAccount } return nil } func (x *AllowAccountRequest) GetPermittedOperations() []string { if x != nil { return x.PermittedOperations } return nil } func (x *AllowAccountRequest) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *AllowAccountRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type AllowCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields OfCoin *CoinRef `protobuf:"bytes,1,opt,name=of_coin,json=ofCoin,proto3" json:"of_coin,omitempty"` PermittedAccount *AccountRef `protobuf:"bytes,2,opt,name=permitted_account,json=permittedAccount,proto3" json:"permitted_account,omitempty"` PermittedOperations []string `protobuf:"bytes,3,rep,name=permitted_operations,json=permittedOperations,proto3" json:"permitted_operations,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,4,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` CoinAllowance *CoinAllowanceRef `protobuf:"bytes,5,opt,name=coin_allowance,json=coinAllowance,proto3" json:"coin_allowance,omitempty"` Signature *Signature `protobuf:"bytes,6,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *AllowCoinRequest) Reset() { *x = AllowCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AllowCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AllowCoinRequest) ProtoMessage() {} func (x *AllowCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 AllowCoinRequest.ProtoReflect.Descriptor instead. func (*AllowCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{43} } func (x *AllowCoinRequest) GetOfCoin() *CoinRef { if x != nil { return x.OfCoin } return nil } func (x *AllowCoinRequest) GetPermittedAccount() *AccountRef { if x != nil { return x.PermittedAccount } return nil } func (x *AllowCoinRequest) GetPermittedOperations() []string { if x != nil { return x.PermittedOperations } return nil } func (x *AllowCoinRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *AllowCoinRequest) GetCoinAllowance() *CoinAllowanceRef { if x != nil { return x.CoinAllowance } return nil } func (x *AllowCoinRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type BalanceAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Account *AccountRef `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"` Allowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=allowance,proto3" json:"allowance,omitempty"` Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *BalanceAccountRequest) Reset() { *x = BalanceAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BalanceAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*BalanceAccountRequest) ProtoMessage() {} func (x *BalanceAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 BalanceAccountRequest.ProtoReflect.Descriptor instead. func (*BalanceAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{44} } func (x *BalanceAccountRequest) GetAccount() *AccountRef { if x != nil { return x.Account } return nil } func (x *BalanceAccountRequest) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *BalanceAccountRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type CoinsAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Account *AccountRef `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"` Allowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=allowance,proto3" json:"allowance,omitempty"` Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *CoinsAccountRequest) Reset() { *x = CoinsAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CoinsAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CoinsAccountRequest) ProtoMessage() {} func (x *CoinsAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 CoinsAccountRequest.ProtoReflect.Descriptor instead. func (*CoinsAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{45} } func (x *CoinsAccountRequest) GetAccount() *AccountRef { if x != nil { return x.Account } return nil } func (x *CoinsAccountRequest) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *CoinsAccountRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type PendingTransactionsAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Account *AccountRef `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"` Allowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=allowance,proto3" json:"allowance,omitempty"` Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *PendingTransactionsAccountRequest) Reset() { *x = PendingTransactionsAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PendingTransactionsAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*PendingTransactionsAccountRequest) ProtoMessage() {} func (x *PendingTransactionsAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 PendingTransactionsAccountRequest.ProtoReflect.Descriptor instead. func (*PendingTransactionsAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{46} } func (x *PendingTransactionsAccountRequest) GetAccount() *AccountRef { if x != nil { return x.Account } return nil } func (x *PendingTransactionsAccountRequest) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *PendingTransactionsAccountRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type IntersectCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Addresses [][]byte `protobuf:"bytes,1,rep,name=addresses,proto3" json:"addresses,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` CoinAllowance *CoinAllowanceRef `protobuf:"bytes,3,opt,name=coin_allowance,json=coinAllowance,proto3" json:"coin_allowance,omitempty"` OfCoin *CoinRef `protobuf:"bytes,4,opt,name=of_coin,json=ofCoin,proto3" json:"of_coin,omitempty"` } func (x *IntersectCoinRequest) Reset() { *x = IntersectCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *IntersectCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*IntersectCoinRequest) ProtoMessage() {} func (x *IntersectCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 IntersectCoinRequest.ProtoReflect.Descriptor instead. func (*IntersectCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{47} } func (x *IntersectCoinRequest) GetAddresses() [][]byte { if x != nil { return x.Addresses } return nil } func (x *IntersectCoinRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *IntersectCoinRequest) GetCoinAllowance() *CoinAllowanceRef { if x != nil { return x.CoinAllowance } return nil } func (x *IntersectCoinRequest) GetOfCoin() *CoinRef { if x != nil { return x.OfCoin } return nil } type MergeCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Coins []*CoinRef `protobuf:"bytes,1,rep,name=coins,proto3" json:"coins,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` CoinAllowances []*CoinAllowanceRef `protobuf:"bytes,3,rep,name=coin_allowances,json=coinAllowances,proto3" json:"coin_allowances,omitempty"` Signature *Ed448Signature `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *MergeCoinRequest) Reset() { *x = MergeCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MergeCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*MergeCoinRequest) ProtoMessage() {} func (x *MergeCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 MergeCoinRequest.ProtoReflect.Descriptor instead. func (*MergeCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{48} } func (x *MergeCoinRequest) GetCoins() []*CoinRef { if x != nil { return x.Coins } return nil } func (x *MergeCoinRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *MergeCoinRequest) GetCoinAllowances() []*CoinAllowanceRef { if x != nil { return x.CoinAllowances } return nil } func (x *MergeCoinRequest) GetSignature() *Ed448Signature { if x != nil { return x.Signature } return nil } type MintCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Proofs [][]byte `protobuf:"bytes,1,rep,name=proofs,proto3" json:"proofs,omitempty"` Allowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=allowance,proto3" json:"allowance,omitempty"` Signature *Ed448Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *MintCoinRequest) Reset() { *x = MintCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MintCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*MintCoinRequest) ProtoMessage() {} func (x *MintCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 MintCoinRequest.ProtoReflect.Descriptor instead. func (*MintCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{49} } func (x *MintCoinRequest) GetProofs() [][]byte { if x != nil { return x.Proofs } return nil } func (x *MintCoinRequest) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *MintCoinRequest) GetSignature() *Ed448Signature { if x != nil { return x.Signature } return nil } type MutualReceiveCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ToAccount *AccountRef `protobuf:"bytes,1,opt,name=to_account,json=toAccount,proto3" json:"to_account,omitempty"` Allowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=allowance,proto3" json:"allowance,omitempty"` Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *MutualReceiveCoinRequest) Reset() { *x = MutualReceiveCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MutualReceiveCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*MutualReceiveCoinRequest) ProtoMessage() {} func (x *MutualReceiveCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 MutualReceiveCoinRequest.ProtoReflect.Descriptor instead. func (*MutualReceiveCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{50} } func (x *MutualReceiveCoinRequest) GetToAccount() *AccountRef { if x != nil { return x.ToAccount } return nil } func (x *MutualReceiveCoinRequest) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *MutualReceiveCoinRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type MutualTransferCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Rendezvous []byte `protobuf:"bytes,1,opt,name=rendezvous,proto3" json:"rendezvous,omitempty"` OfCoin *CoinRef `protobuf:"bytes,2,opt,name=of_coin,json=ofCoin,proto3" json:"of_coin,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,3,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` CoinAllowance *CoinAllowanceRef `protobuf:"bytes,4,opt,name=coin_allowance,json=coinAllowance,proto3" json:"coin_allowance,omitempty"` Signature *Signature `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *MutualTransferCoinRequest) Reset() { *x = MutualTransferCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MutualTransferCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*MutualTransferCoinRequest) ProtoMessage() {} func (x *MutualTransferCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 MutualTransferCoinRequest.ProtoReflect.Descriptor instead. func (*MutualTransferCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{51} } func (x *MutualTransferCoinRequest) GetRendezvous() []byte { if x != nil { return x.Rendezvous } return nil } func (x *MutualTransferCoinRequest) GetOfCoin() *CoinRef { if x != nil { return x.OfCoin } return nil } func (x *MutualTransferCoinRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *MutualTransferCoinRequest) GetCoinAllowance() *CoinAllowanceRef { if x != nil { return x.CoinAllowance } return nil } func (x *MutualTransferCoinRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type RevokeAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields OfAccount *AccountRef `protobuf:"bytes,1,opt,name=of_account,json=ofAccount,proto3" json:"of_account,omitempty"` RevokedAllowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=revoked_allowance,json=revokedAllowance,proto3" json:"revoked_allowance,omitempty"` Allowance *AccountAllowanceRef `protobuf:"bytes,3,opt,name=allowance,proto3" json:"allowance,omitempty"` Signature *Signature `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *RevokeAccountRequest) Reset() { *x = RevokeAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RevokeAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RevokeAccountRequest) ProtoMessage() {} func (x *RevokeAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 RevokeAccountRequest.ProtoReflect.Descriptor instead. func (*RevokeAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{52} } func (x *RevokeAccountRequest) GetOfAccount() *AccountRef { if x != nil { return x.OfAccount } return nil } func (x *RevokeAccountRequest) GetRevokedAllowance() *AccountAllowanceRef { if x != nil { return x.RevokedAllowance } return nil } func (x *RevokeAccountRequest) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *RevokeAccountRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type RevokeCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields OfCoin *CoinRef `protobuf:"bytes,1,opt,name=of_coin,json=ofCoin,proto3" json:"of_coin,omitempty"` RevokedAllowance *CoinAllowanceRef `protobuf:"bytes,2,opt,name=revoked_allowance,json=revokedAllowance,proto3" json:"revoked_allowance,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,3,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` CoinAllowance *CoinAllowanceRef `protobuf:"bytes,4,opt,name=coin_allowance,json=coinAllowance,proto3" json:"coin_allowance,omitempty"` Signature *Signature `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *RevokeCoinRequest) Reset() { *x = RevokeCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RevokeCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RevokeCoinRequest) ProtoMessage() {} func (x *RevokeCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 RevokeCoinRequest.ProtoReflect.Descriptor instead. func (*RevokeCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{53} } func (x *RevokeCoinRequest) GetOfCoin() *CoinRef { if x != nil { return x.OfCoin } return nil } func (x *RevokeCoinRequest) GetRevokedAllowance() *CoinAllowanceRef { if x != nil { return x.RevokedAllowance } return nil } func (x *RevokeCoinRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *RevokeCoinRequest) GetCoinAllowance() *CoinAllowanceRef { if x != nil { return x.CoinAllowance } return nil } func (x *RevokeCoinRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type SplitCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields OfCoin *CoinRef `protobuf:"bytes,1,opt,name=of_coin,json=ofCoin,proto3" json:"of_coin,omitempty"` Amounts [][]byte `protobuf:"bytes,2,rep,name=amounts,proto3" json:"amounts,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,3,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` CoinAllowance *CoinAllowanceRef `protobuf:"bytes,4,opt,name=coin_allowance,json=coinAllowance,proto3" json:"coin_allowance,omitempty"` Signature *Ed448Signature `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *SplitCoinRequest) Reset() { *x = SplitCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SplitCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SplitCoinRequest) ProtoMessage() {} func (x *SplitCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 SplitCoinRequest.ProtoReflect.Descriptor instead. func (*SplitCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{54} } func (x *SplitCoinRequest) GetOfCoin() *CoinRef { if x != nil { return x.OfCoin } return nil } func (x *SplitCoinRequest) GetAmounts() [][]byte { if x != nil { return x.Amounts } return nil } func (x *SplitCoinRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *SplitCoinRequest) GetCoinAllowance() *CoinAllowanceRef { if x != nil { return x.CoinAllowance } return nil } func (x *SplitCoinRequest) GetSignature() *Ed448Signature { if x != nil { return x.Signature } return nil } type TransferCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ToAccount *AccountRef `protobuf:"bytes,1,opt,name=to_account,json=toAccount,proto3" json:"to_account,omitempty"` RefundAccount *AccountRef `protobuf:"bytes,2,opt,name=refund_account,json=refundAccount,proto3" json:"refund_account,omitempty"` OfCoin *CoinRef `protobuf:"bytes,3,opt,name=of_coin,json=ofCoin,proto3" json:"of_coin,omitempty"` Expiry int64 `protobuf:"varint,4,opt,name=expiry,proto3" json:"expiry,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,5,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` CoinAllowance *CoinAllowanceRef `protobuf:"bytes,6,opt,name=coin_allowance,json=coinAllowance,proto3" json:"coin_allowance,omitempty"` Signature *Ed448Signature `protobuf:"bytes,7,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *TransferCoinRequest) Reset() { *x = TransferCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TransferCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*TransferCoinRequest) ProtoMessage() {} func (x *TransferCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 TransferCoinRequest.ProtoReflect.Descriptor instead. func (*TransferCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{55} } func (x *TransferCoinRequest) GetToAccount() *AccountRef { if x != nil { return x.ToAccount } return nil } func (x *TransferCoinRequest) GetRefundAccount() *AccountRef { if x != nil { return x.RefundAccount } return nil } func (x *TransferCoinRequest) GetOfCoin() *CoinRef { if x != nil { return x.OfCoin } return nil } func (x *TransferCoinRequest) GetExpiry() int64 { if x != nil { return x.Expiry } return 0 } func (x *TransferCoinRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *TransferCoinRequest) GetCoinAllowance() *CoinAllowanceRef { if x != nil { return x.CoinAllowance } return nil } func (x *TransferCoinRequest) GetSignature() *Ed448Signature { if x != nil { return x.Signature } return nil } type ApprovePendingTransactionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PendingTransaction *PendingTransactionRef `protobuf:"bytes,1,opt,name=pending_transaction,json=pendingTransaction,proto3" json:"pending_transaction,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *ApprovePendingTransactionRequest) Reset() { *x = ApprovePendingTransactionRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ApprovePendingTransactionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ApprovePendingTransactionRequest) ProtoMessage() {} func (x *ApprovePendingTransactionRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 ApprovePendingTransactionRequest.ProtoReflect.Descriptor instead. func (*ApprovePendingTransactionRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{56} } func (x *ApprovePendingTransactionRequest) GetPendingTransaction() *PendingTransactionRef { if x != nil { return x.PendingTransaction } return nil } func (x *ApprovePendingTransactionRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *ApprovePendingTransactionRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type RejectPendingTransactionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PendingTransaction *PendingTransactionRef `protobuf:"bytes,1,opt,name=pending_transaction,json=pendingTransaction,proto3" json:"pending_transaction,omitempty"` AccountAllowance *AccountAllowanceRef `protobuf:"bytes,2,opt,name=account_allowance,json=accountAllowance,proto3" json:"account_allowance,omitempty"` Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` } func (x *RejectPendingTransactionRequest) Reset() { *x = RejectPendingTransactionRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RejectPendingTransactionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RejectPendingTransactionRequest) ProtoMessage() {} func (x *RejectPendingTransactionRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 RejectPendingTransactionRequest.ProtoReflect.Descriptor instead. func (*RejectPendingTransactionRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{57} } func (x *RejectPendingTransactionRequest) GetPendingTransaction() *PendingTransactionRef { if x != nil { return x.PendingTransaction } return nil } func (x *RejectPendingTransactionRequest) GetAccountAllowance() *AccountAllowanceRef { if x != nil { return x.AccountAllowance } return nil } func (x *RejectPendingTransactionRequest) GetSignature() *Signature { if x != nil { return x.Signature } return nil } type InlineKey struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Ref []byte `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"` Key []byte `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"` } func (x *InlineKey) Reset() { *x = InlineKey{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *InlineKey) String() string { return protoimpl.X.MessageStringOf(x) } func (*InlineKey) ProtoMessage() {} func (x *InlineKey) ProtoReflect() protoreflect.Message { mi := &file_node_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 InlineKey.ProtoReflect.Descriptor instead. func (*InlineKey) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{58} } func (x *InlineKey) GetRef() []byte { if x != nil { return x.Ref } return nil } func (x *InlineKey) GetKey() []byte { if x != nil { return x.Key } return nil } type KeyRing struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Keys []*InlineKey `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"` } func (x *KeyRing) Reset() { *x = KeyRing{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *KeyRing) String() string { return protoimpl.X.MessageStringOf(x) } func (*KeyRing) ProtoMessage() {} func (x *KeyRing) ProtoReflect() protoreflect.Message { mi := &file_node_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 KeyRing.ProtoReflect.Descriptor instead. func (*KeyRing) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{59} } func (x *KeyRing) GetKeys() []*InlineKey { if x != nil { return x.Keys } return nil } type Confirmation struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields MessageId []byte `protobuf:"bytes,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"` Proof []byte `protobuf:"bytes,2,opt,name=proof,proto3" json:"proof,omitempty"` } func (x *Confirmation) Reset() { *x = Confirmation{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Confirmation) String() string { return protoimpl.X.MessageStringOf(x) } func (*Confirmation) ProtoMessage() {} func (x *Confirmation) ProtoReflect() protoreflect.Message { mi := &file_node_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 Confirmation.ProtoReflect.Descriptor instead. func (*Confirmation) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{60} } func (x *Confirmation) GetMessageId() []byte { if x != nil { return x.MessageId } return nil } func (x *Confirmation) GetProof() []byte { if x != nil { return x.Proof } return nil } type DeliveryData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields SharedKey *InlineKey `protobuf:"bytes,1,opt,name=shared_key,json=sharedKey,proto3" json:"shared_key,omitempty"` Confirmation *Confirmation `protobuf:"bytes,2,opt,name=confirmation,proto3" json:"confirmation,omitempty"` } func (x *DeliveryData) Reset() { *x = DeliveryData{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DeliveryData) String() string { return protoimpl.X.MessageStringOf(x) } func (*DeliveryData) ProtoMessage() {} func (x *DeliveryData) ProtoReflect() protoreflect.Message { mi := &file_node_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 DeliveryData.ProtoReflect.Descriptor instead. func (*DeliveryData) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{61} } func (x *DeliveryData) GetSharedKey() *InlineKey { if x != nil { return x.SharedKey } return nil } func (x *DeliveryData) GetConfirmation() *Confirmation { if x != nil { return x.Confirmation } return nil } type DeliveryMethod struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields DeliveryType uint32 `protobuf:"varint,1,opt,name=delivery_type,json=deliveryType,proto3" json:"delivery_type,omitempty"` Address []byte `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` } func (x *DeliveryMethod) Reset() { *x = DeliveryMethod{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DeliveryMethod) String() string { return protoimpl.X.MessageStringOf(x) } func (*DeliveryMethod) ProtoMessage() {} func (x *DeliveryMethod) ProtoReflect() protoreflect.Message { mi := &file_node_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 DeliveryMethod.ProtoReflect.Descriptor instead. func (*DeliveryMethod) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{62} } func (x *DeliveryMethod) GetDeliveryType() uint32 { if x != nil { return x.DeliveryType } return 0 } func (x *DeliveryMethod) GetAddress() []byte { if x != nil { return x.Address } return nil } type DecryptableAllowAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *AllowAccountRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableAllowAccountRequest) Reset() { *x = DecryptableAllowAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableAllowAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableAllowAccountRequest) ProtoMessage() {} func (x *DecryptableAllowAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableAllowAccountRequest.ProtoReflect.Descriptor instead. func (*DecryptableAllowAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{63} } func (x *DecryptableAllowAccountRequest) GetRequest() *AllowAccountRequest { if x != nil { return x.Request } return nil } func (x *DecryptableAllowAccountRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableAllowAccountRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableBalanceAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *BalanceAccountRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` } func (x *DecryptableBalanceAccountRequest) Reset() { *x = DecryptableBalanceAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableBalanceAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableBalanceAccountRequest) ProtoMessage() {} func (x *DecryptableBalanceAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableBalanceAccountRequest.ProtoReflect.Descriptor instead. func (*DecryptableBalanceAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{64} } func (x *DecryptableBalanceAccountRequest) GetRequest() *BalanceAccountRequest { if x != nil { return x.Request } return nil } func (x *DecryptableBalanceAccountRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } type DecryptableCoinsAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *CoinsAccountRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` } func (x *DecryptableCoinsAccountRequest) Reset() { *x = DecryptableCoinsAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableCoinsAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableCoinsAccountRequest) ProtoMessage() {} func (x *DecryptableCoinsAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableCoinsAccountRequest.ProtoReflect.Descriptor instead. func (*DecryptableCoinsAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{65} } func (x *DecryptableCoinsAccountRequest) GetRequest() *CoinsAccountRequest { if x != nil { return x.Request } return nil } func (x *DecryptableCoinsAccountRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } type DecryptableRevokeAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *RevokeAccountRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableRevokeAccountRequest) Reset() { *x = DecryptableRevokeAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableRevokeAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableRevokeAccountRequest) ProtoMessage() {} func (x *DecryptableRevokeAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableRevokeAccountRequest.ProtoReflect.Descriptor instead. func (*DecryptableRevokeAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{66} } func (x *DecryptableRevokeAccountRequest) GetRequest() *RevokeAccountRequest { if x != nil { return x.Request } return nil } func (x *DecryptableRevokeAccountRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableRevokeAccountRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptablePendingTransactionsAccountRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *PendingTransactionsAccountRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptablePendingTransactionsAccountRequest) Reset() { *x = DecryptablePendingTransactionsAccountRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptablePendingTransactionsAccountRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptablePendingTransactionsAccountRequest) ProtoMessage() {} func (x *DecryptablePendingTransactionsAccountRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptablePendingTransactionsAccountRequest.ProtoReflect.Descriptor instead. func (*DecryptablePendingTransactionsAccountRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{67} } func (x *DecryptablePendingTransactionsAccountRequest) GetRequest() *PendingTransactionsAccountRequest { if x != nil { return x.Request } return nil } func (x *DecryptablePendingTransactionsAccountRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptablePendingTransactionsAccountRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableAllowCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *AllowCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableAllowCoinRequest) Reset() { *x = DecryptableAllowCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableAllowCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableAllowCoinRequest) ProtoMessage() {} func (x *DecryptableAllowCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableAllowCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableAllowCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{68} } func (x *DecryptableAllowCoinRequest) GetRequest() *AllowCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableAllowCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableAllowCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableIntersectCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *IntersectCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableIntersectCoinRequest) Reset() { *x = DecryptableIntersectCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableIntersectCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableIntersectCoinRequest) ProtoMessage() {} func (x *DecryptableIntersectCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableIntersectCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableIntersectCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{69} } func (x *DecryptableIntersectCoinRequest) GetRequest() *IntersectCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableIntersectCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableIntersectCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableMergeCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *MergeCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableMergeCoinRequest) Reset() { *x = DecryptableMergeCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableMergeCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableMergeCoinRequest) ProtoMessage() {} func (x *DecryptableMergeCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableMergeCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableMergeCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{70} } func (x *DecryptableMergeCoinRequest) GetRequest() *MergeCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableMergeCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableMergeCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableMintCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *MintCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableMintCoinRequest) Reset() { *x = DecryptableMintCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableMintCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableMintCoinRequest) ProtoMessage() {} func (x *DecryptableMintCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableMintCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableMintCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{71} } func (x *DecryptableMintCoinRequest) GetRequest() *MintCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableMintCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableMintCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableMutualReceiveCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *MutualReceiveCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableMutualReceiveCoinRequest) Reset() { *x = DecryptableMutualReceiveCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableMutualReceiveCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableMutualReceiveCoinRequest) ProtoMessage() {} func (x *DecryptableMutualReceiveCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableMutualReceiveCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableMutualReceiveCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{72} } func (x *DecryptableMutualReceiveCoinRequest) GetRequest() *MutualReceiveCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableMutualReceiveCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableMutualReceiveCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableMutualTransferCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *MutualTransferCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableMutualTransferCoinRequest) Reset() { *x = DecryptableMutualTransferCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableMutualTransferCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableMutualTransferCoinRequest) ProtoMessage() {} func (x *DecryptableMutualTransferCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableMutualTransferCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableMutualTransferCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{73} } func (x *DecryptableMutualTransferCoinRequest) GetRequest() *MutualTransferCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableMutualTransferCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableMutualTransferCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableRevokeCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *RevokeCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableRevokeCoinRequest) Reset() { *x = DecryptableRevokeCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableRevokeCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableRevokeCoinRequest) ProtoMessage() {} func (x *DecryptableRevokeCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableRevokeCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableRevokeCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{74} } func (x *DecryptableRevokeCoinRequest) GetRequest() *RevokeCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableRevokeCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableRevokeCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableSplitCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *SplitCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableSplitCoinRequest) Reset() { *x = DecryptableSplitCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableSplitCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableSplitCoinRequest) ProtoMessage() {} func (x *DecryptableSplitCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableSplitCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableSplitCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{75} } func (x *DecryptableSplitCoinRequest) GetRequest() *SplitCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableSplitCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableSplitCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableTransferCoinRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *TransferCoinRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableTransferCoinRequest) Reset() { *x = DecryptableTransferCoinRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableTransferCoinRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableTransferCoinRequest) ProtoMessage() {} func (x *DecryptableTransferCoinRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableTransferCoinRequest.ProtoReflect.Descriptor instead. func (*DecryptableTransferCoinRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{76} } func (x *DecryptableTransferCoinRequest) GetRequest() *TransferCoinRequest { if x != nil { return x.Request } return nil } func (x *DecryptableTransferCoinRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableTransferCoinRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableApprovePendingTransactionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *ApprovePendingTransactionRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableApprovePendingTransactionRequest) Reset() { *x = DecryptableApprovePendingTransactionRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableApprovePendingTransactionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableApprovePendingTransactionRequest) ProtoMessage() {} func (x *DecryptableApprovePendingTransactionRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableApprovePendingTransactionRequest.ProtoReflect.Descriptor instead. func (*DecryptableApprovePendingTransactionRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{77} } func (x *DecryptableApprovePendingTransactionRequest) GetRequest() *ApprovePendingTransactionRequest { if x != nil { return x.Request } return nil } func (x *DecryptableApprovePendingTransactionRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableApprovePendingTransactionRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type DecryptableRejectPendingTransactionRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Request *RejectPendingTransactionRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"` KeyRing *KeyRing `protobuf:"bytes,2,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` DeliveryMethod *DeliveryMethod `protobuf:"bytes,3,opt,name=delivery_method,json=deliveryMethod,proto3" json:"delivery_method,omitempty"` } func (x *DecryptableRejectPendingTransactionRequest) Reset() { *x = DecryptableRejectPendingTransactionRequest{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecryptableRejectPendingTransactionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecryptableRejectPendingTransactionRequest) ProtoMessage() {} func (x *DecryptableRejectPendingTransactionRequest) ProtoReflect() protoreflect.Message { mi := &file_node_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 DecryptableRejectPendingTransactionRequest.ProtoReflect.Descriptor instead. func (*DecryptableRejectPendingTransactionRequest) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{78} } func (x *DecryptableRejectPendingTransactionRequest) GetRequest() *RejectPendingTransactionRequest { if x != nil { return x.Request } return nil } func (x *DecryptableRejectPendingTransactionRequest) GetKeyRing() *KeyRing { if x != nil { return x.KeyRing } return nil } func (x *DecryptableRejectPendingTransactionRequest) GetDeliveryMethod() *DeliveryMethod { if x != nil { return x.DeliveryMethod } return nil } type CoinInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Coin *CoinRef `protobuf:"bytes,1,opt,name=coin,proto3" json:"coin,omitempty"` Balance []byte `protobuf:"bytes,2,opt,name=balance,proto3" json:"balance,omitempty"` } func (x *CoinInfo) Reset() { *x = CoinInfo{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CoinInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*CoinInfo) ProtoMessage() {} func (x *CoinInfo) ProtoReflect() protoreflect.Message { mi := &file_node_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 CoinInfo.ProtoReflect.Descriptor instead. func (*CoinInfo) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{79} } func (x *CoinInfo) GetCoin() *CoinRef { if x != nil { return x.Coin } return nil } func (x *CoinInfo) GetBalance() []byte { if x != nil { return x.Balance } return nil } type PendingTransactionInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PendingTransaction *PendingTransactionRef `protobuf:"bytes,1,opt,name=pending_transaction,json=pendingTransaction,proto3" json:"pending_transaction,omitempty"` Coin *CoinInfo `protobuf:"bytes,2,opt,name=coin,proto3" json:"coin,omitempty"` RefundAccount *AccountRef `protobuf:"bytes,3,opt,name=refund_account,json=refundAccount,proto3" json:"refund_account,omitempty"` } func (x *PendingTransactionInfo) Reset() { *x = PendingTransactionInfo{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PendingTransactionInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*PendingTransactionInfo) ProtoMessage() {} func (x *PendingTransactionInfo) ProtoReflect() protoreflect.Message { mi := &file_node_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 PendingTransactionInfo.ProtoReflect.Descriptor instead. func (*PendingTransactionInfo) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{80} } func (x *PendingTransactionInfo) GetPendingTransaction() *PendingTransactionRef { if x != nil { return x.PendingTransaction } return nil } func (x *PendingTransactionInfo) GetCoin() *CoinInfo { if x != nil { return x.Coin } return nil } func (x *PendingTransactionInfo) GetRefundAccount() *AccountRef { if x != nil { return x.RefundAccount } return nil } type AllowAccountResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Allowance *AccountAllowanceRef `protobuf:"bytes,1,opt,name=allowance,proto3" json:"allowance,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *AllowAccountResponse) Reset() { *x = AllowAccountResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AllowAccountResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*AllowAccountResponse) ProtoMessage() {} func (x *AllowAccountResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 AllowAccountResponse.ProtoReflect.Descriptor instead. func (*AllowAccountResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{81} } func (x *AllowAccountResponse) GetAllowance() *AccountAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *AllowAccountResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type BalanceAccountResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Balance []byte `protobuf:"bytes,1,opt,name=balance,proto3" json:"balance,omitempty"` } func (x *BalanceAccountResponse) Reset() { *x = BalanceAccountResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BalanceAccountResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*BalanceAccountResponse) ProtoMessage() {} func (x *BalanceAccountResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 BalanceAccountResponse.ProtoReflect.Descriptor instead. func (*BalanceAccountResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{82} } func (x *BalanceAccountResponse) GetBalance() []byte { if x != nil { return x.Balance } return nil } type CoinsAccountResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Coins []*CoinInfo `protobuf:"bytes,1,rep,name=coins,proto3" json:"coins,omitempty"` } func (x *CoinsAccountResponse) Reset() { *x = CoinsAccountResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CoinsAccountResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*CoinsAccountResponse) ProtoMessage() {} func (x *CoinsAccountResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 CoinsAccountResponse.ProtoReflect.Descriptor instead. func (*CoinsAccountResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{83} } func (x *CoinsAccountResponse) GetCoins() []*CoinInfo { if x != nil { return x.Coins } return nil } type PendingTransactionsAccountResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PendingTransactions []*PendingTransactionInfo `protobuf:"bytes,1,rep,name=pending_transactions,json=pendingTransactions,proto3" json:"pending_transactions,omitempty"` } func (x *PendingTransactionsAccountResponse) Reset() { *x = PendingTransactionsAccountResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PendingTransactionsAccountResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*PendingTransactionsAccountResponse) ProtoMessage() {} func (x *PendingTransactionsAccountResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 PendingTransactionsAccountResponse.ProtoReflect.Descriptor instead. func (*PendingTransactionsAccountResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{84} } func (x *PendingTransactionsAccountResponse) GetPendingTransactions() []*PendingTransactionInfo { if x != nil { return x.PendingTransactions } return nil } type RevokeAccountResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Deliveries []*DeliveryData `protobuf:"bytes,1,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *RevokeAccountResponse) Reset() { *x = RevokeAccountResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RevokeAccountResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RevokeAccountResponse) ProtoMessage() {} func (x *RevokeAccountResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 RevokeAccountResponse.ProtoReflect.Descriptor instead. func (*RevokeAccountResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{85} } func (x *RevokeAccountResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type AllowCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Allowance *CoinAllowanceRef `protobuf:"bytes,1,opt,name=allowance,proto3" json:"allowance,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *AllowCoinResponse) Reset() { *x = AllowCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AllowCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*AllowCoinResponse) ProtoMessage() {} func (x *AllowCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 AllowCoinResponse.ProtoReflect.Descriptor instead. func (*AllowCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{86} } func (x *AllowCoinResponse) GetAllowance() *CoinAllowanceRef { if x != nil { return x.Allowance } return nil } func (x *AllowCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type IntersectCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Intersects bool `protobuf:"varint,1,opt,name=intersects,proto3" json:"intersects,omitempty"` } func (x *IntersectCoinResponse) Reset() { *x = IntersectCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *IntersectCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*IntersectCoinResponse) ProtoMessage() {} func (x *IntersectCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 IntersectCoinResponse.ProtoReflect.Descriptor instead. func (*IntersectCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{87} } func (x *IntersectCoinResponse) GetIntersects() bool { if x != nil { return x.Intersects } return false } type MergeCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Coin *CoinRef `protobuf:"bytes,1,opt,name=coin,proto3" json:"coin,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *MergeCoinResponse) Reset() { *x = MergeCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MergeCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MergeCoinResponse) ProtoMessage() {} func (x *MergeCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 MergeCoinResponse.ProtoReflect.Descriptor instead. func (*MergeCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{88} } func (x *MergeCoinResponse) GetCoin() *CoinRef { if x != nil { return x.Coin } return nil } func (x *MergeCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type MintCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Coins []*CoinInfo `protobuf:"bytes,1,rep,name=coins,proto3" json:"coins,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *MintCoinResponse) Reset() { *x = MintCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MintCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MintCoinResponse) ProtoMessage() {} func (x *MintCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_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 MintCoinResponse.ProtoReflect.Descriptor instead. func (*MintCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{89} } func (x *MintCoinResponse) GetCoins() []*CoinInfo { if x != nil { return x.Coins } return nil } func (x *MintCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type MutualReceiveCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Status uint32 `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"` Rendezvous []byte `protobuf:"bytes,2,opt,name=rendezvous,proto3" json:"rendezvous,omitempty"` Coin *CoinRef `protobuf:"bytes,3,opt,name=coin,proto3" json:"coin,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,4,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *MutualReceiveCoinResponse) Reset() { *x = MutualReceiveCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MutualReceiveCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MutualReceiveCoinResponse) ProtoMessage() {} func (x *MutualReceiveCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_proto_msgTypes[90] 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 MutualReceiveCoinResponse.ProtoReflect.Descriptor instead. func (*MutualReceiveCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{90} } func (x *MutualReceiveCoinResponse) GetStatus() uint32 { if x != nil { return x.Status } return 0 } func (x *MutualReceiveCoinResponse) GetRendezvous() []byte { if x != nil { return x.Rendezvous } return nil } func (x *MutualReceiveCoinResponse) GetCoin() *CoinRef { if x != nil { return x.Coin } return nil } func (x *MutualReceiveCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type MutualTransferCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Status uint32 `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *MutualTransferCoinResponse) Reset() { *x = MutualTransferCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *MutualTransferCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*MutualTransferCoinResponse) ProtoMessage() {} func (x *MutualTransferCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_proto_msgTypes[91] 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 MutualTransferCoinResponse.ProtoReflect.Descriptor instead. func (*MutualTransferCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{91} } func (x *MutualTransferCoinResponse) GetStatus() uint32 { if x != nil { return x.Status } return 0 } func (x *MutualTransferCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type RevokeCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Deliveries []*DeliveryData `protobuf:"bytes,1,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *RevokeCoinResponse) Reset() { *x = RevokeCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RevokeCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RevokeCoinResponse) ProtoMessage() {} func (x *RevokeCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_proto_msgTypes[92] 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 RevokeCoinResponse.ProtoReflect.Descriptor instead. func (*RevokeCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{92} } func (x *RevokeCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type SplitCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Coins []*CoinRef `protobuf:"bytes,1,rep,name=coins,proto3" json:"coins,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *SplitCoinResponse) Reset() { *x = SplitCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SplitCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SplitCoinResponse) ProtoMessage() {} func (x *SplitCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_proto_msgTypes[93] 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 SplitCoinResponse.ProtoReflect.Descriptor instead. func (*SplitCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{93} } func (x *SplitCoinResponse) GetCoins() []*CoinRef { if x != nil { return x.Coins } return nil } func (x *SplitCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type TransferCoinResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields PendingTransaction *PendingTransactionRef `protobuf:"bytes,1,opt,name=pending_transaction,json=pendingTransaction,proto3" json:"pending_transaction,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *TransferCoinResponse) Reset() { *x = TransferCoinResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TransferCoinResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*TransferCoinResponse) ProtoMessage() {} func (x *TransferCoinResponse) ProtoReflect() protoreflect.Message { mi := &file_node_proto_msgTypes[94] 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 TransferCoinResponse.ProtoReflect.Descriptor instead. func (*TransferCoinResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{94} } func (x *TransferCoinResponse) GetPendingTransaction() *PendingTransactionRef { if x != nil { return x.PendingTransaction } return nil } func (x *TransferCoinResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type ApprovePendingTransactionResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Coin *CoinRef `protobuf:"bytes,1,opt,name=coin,proto3" json:"coin,omitempty"` Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *ApprovePendingTransactionResponse) Reset() { *x = ApprovePendingTransactionResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ApprovePendingTransactionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ApprovePendingTransactionResponse) ProtoMessage() {} func (x *ApprovePendingTransactionResponse) ProtoReflect() protoreflect.Message { mi := &file_node_proto_msgTypes[95] 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 ApprovePendingTransactionResponse.ProtoReflect.Descriptor instead. func (*ApprovePendingTransactionResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{95} } func (x *ApprovePendingTransactionResponse) GetCoin() *CoinRef { if x != nil { return x.Coin } return nil } func (x *ApprovePendingTransactionResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } type RejectPendingTransactionResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Deliveries []*DeliveryData `protobuf:"bytes,2,rep,name=deliveries,proto3" json:"deliveries,omitempty"` } func (x *RejectPendingTransactionResponse) Reset() { *x = RejectPendingTransactionResponse{} if protoimpl.UnsafeEnabled { mi := &file_node_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RejectPendingTransactionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RejectPendingTransactionResponse) ProtoMessage() {} func (x *RejectPendingTransactionResponse) ProtoReflect() protoreflect.Message { mi := &file_node_proto_msgTypes[96] 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 RejectPendingTransactionResponse.ProtoReflect.Descriptor instead. func (*RejectPendingTransactionResponse) Descriptor() ([]byte, []int) { return file_node_proto_rawDescGZIP(), []int{96} } func (x *RejectPendingTransactionResponse) GetDeliveries() []*DeliveryData { if x != nil { return x.Deliveries } return nil } var File_node_proto protoreflect.FileDescriptor var file_node_proto_rawDesc = []byte{ 0x0a, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x1a, 0x0b, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xad, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x66, 0x72, 0x6f, 0x6d, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6f, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x6f, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x12, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x22, 0x6c, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0x14, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x14, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x17, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x6c, 0x0a, 0x0e, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x16, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x14, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x5a, 0x0a, 0x11, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0b, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x22, 0xfc, 0x01, 0x0a, 0x08, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x64, 0x64, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x64, 0x64, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0xad, 0x01, 0x0a, 0x10, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x09, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x59, 0x0a, 0x17, 0x75, 0x6e, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x15, 0x75, 0x6e, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x65, 0x0a, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x64, 0x64, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x61, 0x64, 0x64, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x70, 0x65, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x81, 0x01, 0x0a, 0x10, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x65, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xaf, 0x01, 0x0a, 0x12, 0x50, 0x75, 0x74, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x09, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x59, 0x0a, 0x17, 0x75, 0x6e, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x15, 0x75, 0x6e, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x87, 0x01, 0x0a, 0x12, 0x50, 0x75, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x65, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x0d, 0x0a, 0x0b, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5e, 0x0a, 0x13, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x15, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xe0, 0x01, 0x0a, 0x11, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x53, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x38, 0x0a, 0x18, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x53, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x22, 0x6e, 0x0a, 0x0a, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2f, 0x0a, 0x13, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x13, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf0, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x6c, 0x66, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x48, 0x65, 0x61, 0x64, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x33, 0x0a, 0x11, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x62, 0x0a, 0x0b, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x0e, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x66, 0x0a, 0x0c, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0e, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x19, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9f, 0x02, 0x0a, 0x0c, 0x50, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x48, 0x65, 0x61, 0x64, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xce, 0x01, 0x0a, 0x15, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x66, 0x0a, 0x1b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x5f, 0x65, 0x64, 0x34, 0x34, 0x38, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x64, 0x34, 0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x18, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x64, 0x34, 0x34, 0x38, 0x12, 0x4d, 0x0a, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x22, 0x30, 0x0a, 0x14, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x68, 0x0a, 0x0f, 0x49, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x22, 0xce, 0x01, 0x0a, 0x0a, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x12, 0x5e, 0x0a, 0x12, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x55, 0x0a, 0x10, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2f, 0x0a, 0x13, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x2c, 0x0a, 0x10, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7d, 0x0a, 0x04, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x22, 0xf9, 0x02, 0x0a, 0x0c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x41, 0x0a, 0x05, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x41, 0x0a, 0x05, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x12, 0x3e, 0x0a, 0x04, 0x6d, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x04, 0x6d, 0x69, 0x6e, 0x74, 0x12, 0x4c, 0x0a, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x52, 0x0a, 0x0d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x8f, 0x02, 0x0a, 0x0c, 0x50, 0x72, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x69, 0x73, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x69, 0x73, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x39, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x22, 0x9d, 0x02, 0x0a, 0x0b, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x33, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x48, 0x00, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x3d, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x72, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x48, 0x00, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x42, 0x0a, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x4c, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x72, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x48, 0x00, 0x52, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x42, 0x08, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x4e, 0x0a, 0x0c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x22, 0x23, 0x0a, 0x07, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x31, 0x0a, 0x15, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x22, 0x0a, 0x06, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x83, 0x01, 0x0a, 0x09, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x31, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x66, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x65, 0x0a, 0x15, 0x50, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x0d, 0x70, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x73, 0x22, 0xc4, 0x01, 0x0a, 0x1f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5f, 0x0a, 0x13, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x12, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xec, 0x02, 0x0a, 0x13, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0a, 0x6f, 0x66, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x09, 0x6f, 0x66, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x11, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x10, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xc1, 0x03, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x66, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x6f, 0x66, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x50, 0x0a, 0x11, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x10, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x63, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xe4, 0x01, 0x0a, 0x15, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xe2, 0x01, 0x0a, 0x13, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xf0, 0x01, 0x0a, 0x21, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x9c, 0x02, 0x0a, 0x14, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x63, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x66, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x6f, 0x66, 0x43, 0x6f, 0x69, 0x6e, 0x22, 0xc0, 0x02, 0x0a, 0x10, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x52, 0x0a, 0x0f, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x64, 0x34, 0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x0f, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x73, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x64, 0x34, 0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xec, 0x01, 0x0a, 0x18, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0a, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x09, 0x74, 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xe5, 0x02, 0x0a, 0x19, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x66, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x6f, 0x66, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x63, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xc3, 0x02, 0x0a, 0x14, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0a, 0x6f, 0x66, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x09, 0x6f, 0x66, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x59, 0x0a, 0x11, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x95, 0x03, 0x0a, 0x11, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x66, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x6f, 0x66, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x56, 0x0a, 0x11, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x63, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xdb, 0x02, 0x0a, 0x10, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x66, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x6f, 0x66, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x63, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x64, 0x34, 0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xec, 0x03, 0x0a, 0x13, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0a, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x09, 0x74, 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x0e, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x66, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x06, 0x6f, 0x66, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x63, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x64, 0x34, 0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xa0, 0x02, 0x0a, 0x20, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5f, 0x0a, 0x13, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x12, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x9f, 0x02, 0x0a, 0x1f, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5f, 0x0a, 0x13, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x12, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x59, 0x0a, 0x11, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x2f, 0x0a, 0x09, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x41, 0x0a, 0x07, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x36, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x22, 0x43, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x22, 0x9c, 0x01, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x41, 0x0a, 0x0a, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x09, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x12, 0x49, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4f, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xf7, 0x01, 0x0a, 0x1e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xa9, 0x01, 0x0a, 0x20, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x22, 0xa5, 0x01, 0x0a, 0x1e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x22, 0xf9, 0x01, 0x0a, 0x1f, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x93, 0x02, 0x0a, 0x2c, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xf1, 0x01, 0x0a, 0x1b, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xf9, 0x01, 0x0a, 0x1f, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xf1, 0x01, 0x0a, 0x1b, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xef, 0x01, 0x0a, 0x1a, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x81, 0x02, 0x0a, 0x23, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x83, 0x02, 0x0a, 0x24, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4c, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xf3, 0x01, 0x0a, 0x1c, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xf1, 0x01, 0x0a, 0x1b, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0xf7, 0x01, 0x0a, 0x1e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x91, 0x02, 0x0a, 0x2b, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x8f, 0x02, 0x0a, 0x2a, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x52, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x5a, 0x0a, 0x08, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x34, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, 0xfc, 0x01, 0x0a, 0x16, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a, 0x13, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x12, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x4a, 0x0a, 0x0e, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa9, 0x01, 0x0a, 0x14, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x32, 0x0a, 0x16, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x4f, 0x0a, 0x14, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x22, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x14, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x5e, 0x0a, 0x15, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0xa3, 0x01, 0x0a, 0x11, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x66, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x37, 0x0a, 0x15, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x73, 0x22, 0x90, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x92, 0x01, 0x0a, 0x10, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x19, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x12, 0x34, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x7b, 0x0a, 0x1a, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x12, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x92, 0x01, 0x0a, 0x11, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x05, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0xbe, 0x01, 0x0a, 0x14, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x13, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x12, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0xa0, 0x01, 0x0a, 0x21, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x69, 0x0a, 0x20, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x69, 0x65, 0x73, 0x32, 0xd7, 0x01, 0x0a, 0x11, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6b, 0x0a, 0x11, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x55, 0x0a, 0x04, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x24, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x32, 0xf6, 0x05, 0x0a, 0x0b, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x5f, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6e, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x84, 0x05, 0x0a, 0x0e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6f, 0x0a, 0x05, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x12, 0x37, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x39, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x73, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x12, 0x37, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x9d, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x45, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x06, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x38, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x9e, 0x08, 0x0a, 0x0b, 0x43, 0x6f, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x69, 0x0a, 0x05, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x12, 0x34, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x12, 0x38, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x05, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x12, 0x34, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x04, 0x4d, 0x69, 0x6e, 0x74, 0x12, 0x33, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x0d, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x12, 0x3c, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x86, 0x01, 0x0a, 0x0e, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x3d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x6c, 0x0a, 0x06, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x35, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x05, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x34, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x08, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x37, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xad, 0x02, 0x0a, 0x12, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x8b, 0x01, 0x0a, 0x07, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x12, 0x44, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x43, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xcf, 0x01, 0x0a, 0x09, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x60, 0x0a, 0x0b, 0x50, 0x75, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x0b, 0x50, 0x75, 0x74, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x74, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x3a, 0x5a, 0x38, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2f, 0x6d, 0x6f, 0x6e, 0x6f, 0x72, 0x65, 0x70, 0x6f, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_node_proto_rawDescOnce sync.Once file_node_proto_rawDescData = file_node_proto_rawDesc ) func file_node_proto_rawDescGZIP() []byte { file_node_proto_rawDescOnce.Do(func() { file_node_proto_rawDescData = protoimpl.X.CompressGZIP(file_node_proto_rawDescData) }) return file_node_proto_rawDescData } var file_node_proto_msgTypes = make([]protoimpl.MessageInfo, 97) var file_node_proto_goTypes = []interface{}{ (*GetFramesRequest)(nil), // 0: quilibrium.node.node.pb.GetFramesRequest (*GetFrameInfoRequest)(nil), // 1: quilibrium.node.node.pb.GetFrameInfoRequest (*GetPeerInfoRequest)(nil), // 2: quilibrium.node.node.pb.GetPeerInfoRequest (*GetNodeInfoRequest)(nil), // 3: quilibrium.node.node.pb.GetNodeInfoRequest (*GetNetworkInfoRequest)(nil), // 4: quilibrium.node.node.pb.GetNetworkInfoRequest (*FramesResponse)(nil), // 5: quilibrium.node.node.pb.FramesResponse (*FrameInfoResponse)(nil), // 6: quilibrium.node.node.pb.FrameInfoResponse (*PeerInfo)(nil), // 7: quilibrium.node.node.pb.PeerInfo (*PeerInfoResponse)(nil), // 8: quilibrium.node.node.pb.PeerInfoResponse (*NetworkInfo)(nil), // 9: quilibrium.node.node.pb.NetworkInfo (*NodeInfoResponse)(nil), // 10: quilibrium.node.node.pb.NodeInfoResponse (*PutPeerInfoRequest)(nil), // 11: quilibrium.node.node.pb.PutPeerInfoRequest (*PutNodeInfoRequest)(nil), // 12: quilibrium.node.node.pb.PutNodeInfoRequest (*PutResponse)(nil), // 13: quilibrium.node.node.pb.PutResponse (*NetworkInfoResponse)(nil), // 14: quilibrium.node.node.pb.NetworkInfoResponse (*GetTokenInfoRequest)(nil), // 15: quilibrium.node.node.pb.GetTokenInfoRequest (*TokenInfoResponse)(nil), // 16: quilibrium.node.node.pb.TokenInfoResponse (*Capability)(nil), // 17: quilibrium.node.node.pb.Capability (*SelfTestReport)(nil), // 18: quilibrium.node.node.pb.SelfTestReport (*ValidationMessage)(nil), // 19: quilibrium.node.node.pb.ValidationMessage (*SyncRequest)(nil), // 20: quilibrium.node.node.pb.SyncRequest (*SyncResponse)(nil), // 21: quilibrium.node.node.pb.SyncResponse (*GetPeerManifestsRequest)(nil), // 22: quilibrium.node.node.pb.GetPeerManifestsRequest (*PeerManifest)(nil), // 23: quilibrium.node.node.pb.PeerManifest (*AnnounceProverRequest)(nil), // 24: quilibrium.node.node.pb.AnnounceProverRequest (*OriginatedAccountRef)(nil), // 25: quilibrium.node.node.pb.OriginatedAccountRef (*ImplicitAccount)(nil), // 26: quilibrium.node.node.pb.ImplicitAccount (*AccountRef)(nil), // 27: quilibrium.node.node.pb.AccountRef (*AccountAllowanceRef)(nil), // 28: quilibrium.node.node.pb.AccountAllowanceRef (*CoinAllowanceRef)(nil), // 29: quilibrium.node.node.pb.CoinAllowanceRef (*Coin)(nil), // 30: quilibrium.node.node.pb.Coin (*TokenRequest)(nil), // 31: quilibrium.node.node.pb.TokenRequest (*TokenRequests)(nil), // 32: quilibrium.node.node.pb.TokenRequests (*PreCoinProof)(nil), // 33: quilibrium.node.node.pb.PreCoinProof (*TokenOutput)(nil), // 34: quilibrium.node.node.pb.TokenOutput (*TokenOutputs)(nil), // 35: quilibrium.node.node.pb.TokenOutputs (*CoinRef)(nil), // 36: quilibrium.node.node.pb.CoinRef (*PendingTransactionRef)(nil), // 37: quilibrium.node.node.pb.PendingTransactionRef (*KeyRef)(nil), // 38: quilibrium.node.node.pb.KeyRef (*Signature)(nil), // 39: quilibrium.node.node.pb.Signature (*PeerManifestsResponse)(nil), // 40: quilibrium.node.node.pb.PeerManifestsResponse (*AcceptPendingTransactionRequest)(nil), // 41: quilibrium.node.node.pb.AcceptPendingTransactionRequest (*AllowAccountRequest)(nil), // 42: quilibrium.node.node.pb.AllowAccountRequest (*AllowCoinRequest)(nil), // 43: quilibrium.node.node.pb.AllowCoinRequest (*BalanceAccountRequest)(nil), // 44: quilibrium.node.node.pb.BalanceAccountRequest (*CoinsAccountRequest)(nil), // 45: quilibrium.node.node.pb.CoinsAccountRequest (*PendingTransactionsAccountRequest)(nil), // 46: quilibrium.node.node.pb.PendingTransactionsAccountRequest (*IntersectCoinRequest)(nil), // 47: quilibrium.node.node.pb.IntersectCoinRequest (*MergeCoinRequest)(nil), // 48: quilibrium.node.node.pb.MergeCoinRequest (*MintCoinRequest)(nil), // 49: quilibrium.node.node.pb.MintCoinRequest (*MutualReceiveCoinRequest)(nil), // 50: quilibrium.node.node.pb.MutualReceiveCoinRequest (*MutualTransferCoinRequest)(nil), // 51: quilibrium.node.node.pb.MutualTransferCoinRequest (*RevokeAccountRequest)(nil), // 52: quilibrium.node.node.pb.RevokeAccountRequest (*RevokeCoinRequest)(nil), // 53: quilibrium.node.node.pb.RevokeCoinRequest (*SplitCoinRequest)(nil), // 54: quilibrium.node.node.pb.SplitCoinRequest (*TransferCoinRequest)(nil), // 55: quilibrium.node.node.pb.TransferCoinRequest (*ApprovePendingTransactionRequest)(nil), // 56: quilibrium.node.node.pb.ApprovePendingTransactionRequest (*RejectPendingTransactionRequest)(nil), // 57: quilibrium.node.node.pb.RejectPendingTransactionRequest (*InlineKey)(nil), // 58: quilibrium.node.node.pb.InlineKey (*KeyRing)(nil), // 59: quilibrium.node.node.pb.KeyRing (*Confirmation)(nil), // 60: quilibrium.node.node.pb.Confirmation (*DeliveryData)(nil), // 61: quilibrium.node.node.pb.DeliveryData (*DeliveryMethod)(nil), // 62: quilibrium.node.node.pb.DeliveryMethod (*DecryptableAllowAccountRequest)(nil), // 63: quilibrium.node.node.pb.DecryptableAllowAccountRequest (*DecryptableBalanceAccountRequest)(nil), // 64: quilibrium.node.node.pb.DecryptableBalanceAccountRequest (*DecryptableCoinsAccountRequest)(nil), // 65: quilibrium.node.node.pb.DecryptableCoinsAccountRequest (*DecryptableRevokeAccountRequest)(nil), // 66: quilibrium.node.node.pb.DecryptableRevokeAccountRequest (*DecryptablePendingTransactionsAccountRequest)(nil), // 67: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest (*DecryptableAllowCoinRequest)(nil), // 68: quilibrium.node.node.pb.DecryptableAllowCoinRequest (*DecryptableIntersectCoinRequest)(nil), // 69: quilibrium.node.node.pb.DecryptableIntersectCoinRequest (*DecryptableMergeCoinRequest)(nil), // 70: quilibrium.node.node.pb.DecryptableMergeCoinRequest (*DecryptableMintCoinRequest)(nil), // 71: quilibrium.node.node.pb.DecryptableMintCoinRequest (*DecryptableMutualReceiveCoinRequest)(nil), // 72: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest (*DecryptableMutualTransferCoinRequest)(nil), // 73: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest (*DecryptableRevokeCoinRequest)(nil), // 74: quilibrium.node.node.pb.DecryptableRevokeCoinRequest (*DecryptableSplitCoinRequest)(nil), // 75: quilibrium.node.node.pb.DecryptableSplitCoinRequest (*DecryptableTransferCoinRequest)(nil), // 76: quilibrium.node.node.pb.DecryptableTransferCoinRequest (*DecryptableApprovePendingTransactionRequest)(nil), // 77: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest (*DecryptableRejectPendingTransactionRequest)(nil), // 78: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest (*CoinInfo)(nil), // 79: quilibrium.node.node.pb.CoinInfo (*PendingTransactionInfo)(nil), // 80: quilibrium.node.node.pb.PendingTransactionInfo (*AllowAccountResponse)(nil), // 81: quilibrium.node.node.pb.AllowAccountResponse (*BalanceAccountResponse)(nil), // 82: quilibrium.node.node.pb.BalanceAccountResponse (*CoinsAccountResponse)(nil), // 83: quilibrium.node.node.pb.CoinsAccountResponse (*PendingTransactionsAccountResponse)(nil), // 84: quilibrium.node.node.pb.PendingTransactionsAccountResponse (*RevokeAccountResponse)(nil), // 85: quilibrium.node.node.pb.RevokeAccountResponse (*AllowCoinResponse)(nil), // 86: quilibrium.node.node.pb.AllowCoinResponse (*IntersectCoinResponse)(nil), // 87: quilibrium.node.node.pb.IntersectCoinResponse (*MergeCoinResponse)(nil), // 88: quilibrium.node.node.pb.MergeCoinResponse (*MintCoinResponse)(nil), // 89: quilibrium.node.node.pb.MintCoinResponse (*MutualReceiveCoinResponse)(nil), // 90: quilibrium.node.node.pb.MutualReceiveCoinResponse (*MutualTransferCoinResponse)(nil), // 91: quilibrium.node.node.pb.MutualTransferCoinResponse (*RevokeCoinResponse)(nil), // 92: quilibrium.node.node.pb.RevokeCoinResponse (*SplitCoinResponse)(nil), // 93: quilibrium.node.node.pb.SplitCoinResponse (*TransferCoinResponse)(nil), // 94: quilibrium.node.node.pb.TransferCoinResponse (*ApprovePendingTransactionResponse)(nil), // 95: quilibrium.node.node.pb.ApprovePendingTransactionResponse (*RejectPendingTransactionResponse)(nil), // 96: quilibrium.node.node.pb.RejectPendingTransactionResponse (*ClockFrame)(nil), // 97: quilibrium.node.clock.pb.ClockFrame (*ClockFramesRequest)(nil), // 98: quilibrium.node.clock.pb.ClockFramesRequest (*ClockFramesResponse)(nil), // 99: quilibrium.node.clock.pb.ClockFramesResponse (*Ed448Signature)(nil), // 100: quilibrium.node.keys.pb.Ed448Signature } var file_node_proto_depIdxs = []int32{ 97, // 0: quilibrium.node.node.pb.FramesResponse.truncated_clock_frames:type_name -> quilibrium.node.clock.pb.ClockFrame 97, // 1: quilibrium.node.node.pb.FrameInfoResponse.clock_frame:type_name -> quilibrium.node.clock.pb.ClockFrame 7, // 2: quilibrium.node.node.pb.PeerInfoResponse.peer_info:type_name -> quilibrium.node.node.pb.PeerInfo 7, // 3: quilibrium.node.node.pb.PeerInfoResponse.uncooperative_peer_info:type_name -> quilibrium.node.node.pb.PeerInfo 7, // 4: quilibrium.node.node.pb.PutPeerInfoRequest.peer_info:type_name -> quilibrium.node.node.pb.PeerInfo 7, // 5: quilibrium.node.node.pb.PutPeerInfoRequest.uncooperative_peer_info:type_name -> quilibrium.node.node.pb.PeerInfo 9, // 6: quilibrium.node.node.pb.NetworkInfoResponse.network_info:type_name -> quilibrium.node.node.pb.NetworkInfo 17, // 7: quilibrium.node.node.pb.SelfTestReport.capabilities:type_name -> quilibrium.node.node.pb.Capability 98, // 8: quilibrium.node.node.pb.SyncRequest.frames_request:type_name -> quilibrium.node.clock.pb.ClockFramesRequest 99, // 9: quilibrium.node.node.pb.SyncResponse.frames_response:type_name -> quilibrium.node.clock.pb.ClockFramesResponse 17, // 10: quilibrium.node.node.pb.PeerManifest.capabilities:type_name -> quilibrium.node.node.pb.Capability 100, // 11: quilibrium.node.node.pb.AnnounceProverRequest.public_key_signatures_ed448:type_name -> quilibrium.node.keys.pb.Ed448Signature 49, // 12: quilibrium.node.node.pb.AnnounceProverRequest.initial_proof:type_name -> quilibrium.node.node.pb.MintCoinRequest 25, // 13: quilibrium.node.node.pb.AccountRef.originated_account:type_name -> quilibrium.node.node.pb.OriginatedAccountRef 26, // 14: quilibrium.node.node.pb.AccountRef.implicit_account:type_name -> quilibrium.node.node.pb.ImplicitAccount 27, // 15: quilibrium.node.node.pb.Coin.owner:type_name -> quilibrium.node.node.pb.AccountRef 55, // 16: quilibrium.node.node.pb.TokenRequest.transfer:type_name -> quilibrium.node.node.pb.TransferCoinRequest 54, // 17: quilibrium.node.node.pb.TokenRequest.split:type_name -> quilibrium.node.node.pb.SplitCoinRequest 48, // 18: quilibrium.node.node.pb.TokenRequest.merge:type_name -> quilibrium.node.node.pb.MergeCoinRequest 49, // 19: quilibrium.node.node.pb.TokenRequest.mint:type_name -> quilibrium.node.node.pb.MintCoinRequest 24, // 20: quilibrium.node.node.pb.TokenRequest.announce:type_name -> quilibrium.node.node.pb.AnnounceProverRequest 31, // 21: quilibrium.node.node.pb.TokenRequests.requests:type_name -> quilibrium.node.node.pb.TokenRequest 27, // 22: quilibrium.node.node.pb.PreCoinProof.owner:type_name -> quilibrium.node.node.pb.AccountRef 30, // 23: quilibrium.node.node.pb.TokenOutput.coin:type_name -> quilibrium.node.node.pb.Coin 33, // 24: quilibrium.node.node.pb.TokenOutput.proof:type_name -> quilibrium.node.node.pb.PreCoinProof 30, // 25: quilibrium.node.node.pb.TokenOutput.deleted_coin:type_name -> quilibrium.node.node.pb.Coin 33, // 26: quilibrium.node.node.pb.TokenOutput.deleted_proof:type_name -> quilibrium.node.node.pb.PreCoinProof 34, // 27: quilibrium.node.node.pb.TokenOutputs.outputs:type_name -> quilibrium.node.node.pb.TokenOutput 38, // 28: quilibrium.node.node.pb.Signature.key:type_name -> quilibrium.node.node.pb.KeyRef 23, // 29: quilibrium.node.node.pb.PeerManifestsResponse.peer_manifests:type_name -> quilibrium.node.node.pb.PeerManifest 37, // 30: quilibrium.node.node.pb.AcceptPendingTransactionRequest.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef 39, // 31: quilibrium.node.node.pb.AcceptPendingTransactionRequest.signature:type_name -> quilibrium.node.node.pb.Signature 27, // 32: quilibrium.node.node.pb.AllowAccountRequest.of_account:type_name -> quilibrium.node.node.pb.AccountRef 27, // 33: quilibrium.node.node.pb.AllowAccountRequest.permitted_account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 34: quilibrium.node.node.pb.AllowAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 35: quilibrium.node.node.pb.AllowAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature 36, // 36: quilibrium.node.node.pb.AllowCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef 27, // 37: quilibrium.node.node.pb.AllowCoinRequest.permitted_account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 38: quilibrium.node.node.pb.AllowCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 29, // 39: quilibrium.node.node.pb.AllowCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 39, // 40: quilibrium.node.node.pb.AllowCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature 27, // 41: quilibrium.node.node.pb.BalanceAccountRequest.account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 42: quilibrium.node.node.pb.BalanceAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 43: quilibrium.node.node.pb.BalanceAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature 27, // 44: quilibrium.node.node.pb.CoinsAccountRequest.account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 45: quilibrium.node.node.pb.CoinsAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 46: quilibrium.node.node.pb.CoinsAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature 27, // 47: quilibrium.node.node.pb.PendingTransactionsAccountRequest.account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 48: quilibrium.node.node.pb.PendingTransactionsAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 49: quilibrium.node.node.pb.PendingTransactionsAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature 28, // 50: quilibrium.node.node.pb.IntersectCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 29, // 51: quilibrium.node.node.pb.IntersectCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 36, // 52: quilibrium.node.node.pb.IntersectCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef 36, // 53: quilibrium.node.node.pb.MergeCoinRequest.coins:type_name -> quilibrium.node.node.pb.CoinRef 28, // 54: quilibrium.node.node.pb.MergeCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 29, // 55: quilibrium.node.node.pb.MergeCoinRequest.coin_allowances:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 100, // 56: quilibrium.node.node.pb.MergeCoinRequest.signature:type_name -> quilibrium.node.keys.pb.Ed448Signature 28, // 57: quilibrium.node.node.pb.MintCoinRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 100, // 58: quilibrium.node.node.pb.MintCoinRequest.signature:type_name -> quilibrium.node.keys.pb.Ed448Signature 27, // 59: quilibrium.node.node.pb.MutualReceiveCoinRequest.to_account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 60: quilibrium.node.node.pb.MutualReceiveCoinRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 61: quilibrium.node.node.pb.MutualReceiveCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature 36, // 62: quilibrium.node.node.pb.MutualTransferCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef 28, // 63: quilibrium.node.node.pb.MutualTransferCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 29, // 64: quilibrium.node.node.pb.MutualTransferCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 39, // 65: quilibrium.node.node.pb.MutualTransferCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature 27, // 66: quilibrium.node.node.pb.RevokeAccountRequest.of_account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 67: quilibrium.node.node.pb.RevokeAccountRequest.revoked_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 28, // 68: quilibrium.node.node.pb.RevokeAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 69: quilibrium.node.node.pb.RevokeAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature 36, // 70: quilibrium.node.node.pb.RevokeCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef 29, // 71: quilibrium.node.node.pb.RevokeCoinRequest.revoked_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 28, // 72: quilibrium.node.node.pb.RevokeCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 29, // 73: quilibrium.node.node.pb.RevokeCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 39, // 74: quilibrium.node.node.pb.RevokeCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature 36, // 75: quilibrium.node.node.pb.SplitCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef 28, // 76: quilibrium.node.node.pb.SplitCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 29, // 77: quilibrium.node.node.pb.SplitCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 100, // 78: quilibrium.node.node.pb.SplitCoinRequest.signature:type_name -> quilibrium.node.keys.pb.Ed448Signature 27, // 79: quilibrium.node.node.pb.TransferCoinRequest.to_account:type_name -> quilibrium.node.node.pb.AccountRef 27, // 80: quilibrium.node.node.pb.TransferCoinRequest.refund_account:type_name -> quilibrium.node.node.pb.AccountRef 36, // 81: quilibrium.node.node.pb.TransferCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef 28, // 82: quilibrium.node.node.pb.TransferCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 29, // 83: quilibrium.node.node.pb.TransferCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 100, // 84: quilibrium.node.node.pb.TransferCoinRequest.signature:type_name -> quilibrium.node.keys.pb.Ed448Signature 37, // 85: quilibrium.node.node.pb.ApprovePendingTransactionRequest.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef 28, // 86: quilibrium.node.node.pb.ApprovePendingTransactionRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 87: quilibrium.node.node.pb.ApprovePendingTransactionRequest.signature:type_name -> quilibrium.node.node.pb.Signature 37, // 88: quilibrium.node.node.pb.RejectPendingTransactionRequest.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef 28, // 89: quilibrium.node.node.pb.RejectPendingTransactionRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 39, // 90: quilibrium.node.node.pb.RejectPendingTransactionRequest.signature:type_name -> quilibrium.node.node.pb.Signature 58, // 91: quilibrium.node.node.pb.KeyRing.keys:type_name -> quilibrium.node.node.pb.InlineKey 58, // 92: quilibrium.node.node.pb.DeliveryData.shared_key:type_name -> quilibrium.node.node.pb.InlineKey 60, // 93: quilibrium.node.node.pb.DeliveryData.confirmation:type_name -> quilibrium.node.node.pb.Confirmation 42, // 94: quilibrium.node.node.pb.DecryptableAllowAccountRequest.request:type_name -> quilibrium.node.node.pb.AllowAccountRequest 59, // 95: quilibrium.node.node.pb.DecryptableAllowAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 96: quilibrium.node.node.pb.DecryptableAllowAccountRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 44, // 97: quilibrium.node.node.pb.DecryptableBalanceAccountRequest.request:type_name -> quilibrium.node.node.pb.BalanceAccountRequest 59, // 98: quilibrium.node.node.pb.DecryptableBalanceAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 45, // 99: quilibrium.node.node.pb.DecryptableCoinsAccountRequest.request:type_name -> quilibrium.node.node.pb.CoinsAccountRequest 59, // 100: quilibrium.node.node.pb.DecryptableCoinsAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 52, // 101: quilibrium.node.node.pb.DecryptableRevokeAccountRequest.request:type_name -> quilibrium.node.node.pb.RevokeAccountRequest 59, // 102: quilibrium.node.node.pb.DecryptableRevokeAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 103: quilibrium.node.node.pb.DecryptableRevokeAccountRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 46, // 104: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest.request:type_name -> quilibrium.node.node.pb.PendingTransactionsAccountRequest 59, // 105: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 106: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 43, // 107: quilibrium.node.node.pb.DecryptableAllowCoinRequest.request:type_name -> quilibrium.node.node.pb.AllowCoinRequest 59, // 108: quilibrium.node.node.pb.DecryptableAllowCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 109: quilibrium.node.node.pb.DecryptableAllowCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 47, // 110: quilibrium.node.node.pb.DecryptableIntersectCoinRequest.request:type_name -> quilibrium.node.node.pb.IntersectCoinRequest 59, // 111: quilibrium.node.node.pb.DecryptableIntersectCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 112: quilibrium.node.node.pb.DecryptableIntersectCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 48, // 113: quilibrium.node.node.pb.DecryptableMergeCoinRequest.request:type_name -> quilibrium.node.node.pb.MergeCoinRequest 59, // 114: quilibrium.node.node.pb.DecryptableMergeCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 115: quilibrium.node.node.pb.DecryptableMergeCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 49, // 116: quilibrium.node.node.pb.DecryptableMintCoinRequest.request:type_name -> quilibrium.node.node.pb.MintCoinRequest 59, // 117: quilibrium.node.node.pb.DecryptableMintCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 118: quilibrium.node.node.pb.DecryptableMintCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 50, // 119: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest.request:type_name -> quilibrium.node.node.pb.MutualReceiveCoinRequest 59, // 120: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 121: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 51, // 122: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest.request:type_name -> quilibrium.node.node.pb.MutualTransferCoinRequest 59, // 123: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 124: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 53, // 125: quilibrium.node.node.pb.DecryptableRevokeCoinRequest.request:type_name -> quilibrium.node.node.pb.RevokeCoinRequest 59, // 126: quilibrium.node.node.pb.DecryptableRevokeCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 127: quilibrium.node.node.pb.DecryptableRevokeCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 54, // 128: quilibrium.node.node.pb.DecryptableSplitCoinRequest.request:type_name -> quilibrium.node.node.pb.SplitCoinRequest 59, // 129: quilibrium.node.node.pb.DecryptableSplitCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 130: quilibrium.node.node.pb.DecryptableSplitCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 55, // 131: quilibrium.node.node.pb.DecryptableTransferCoinRequest.request:type_name -> quilibrium.node.node.pb.TransferCoinRequest 59, // 132: quilibrium.node.node.pb.DecryptableTransferCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 133: quilibrium.node.node.pb.DecryptableTransferCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 56, // 134: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest.request:type_name -> quilibrium.node.node.pb.ApprovePendingTransactionRequest 59, // 135: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 136: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 57, // 137: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest.request:type_name -> quilibrium.node.node.pb.RejectPendingTransactionRequest 59, // 138: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing 62, // 139: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod 36, // 140: quilibrium.node.node.pb.CoinInfo.coin:type_name -> quilibrium.node.node.pb.CoinRef 37, // 141: quilibrium.node.node.pb.PendingTransactionInfo.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef 79, // 142: quilibrium.node.node.pb.PendingTransactionInfo.coin:type_name -> quilibrium.node.node.pb.CoinInfo 27, // 143: quilibrium.node.node.pb.PendingTransactionInfo.refund_account:type_name -> quilibrium.node.node.pb.AccountRef 28, // 144: quilibrium.node.node.pb.AllowAccountResponse.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef 61, // 145: quilibrium.node.node.pb.AllowAccountResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 79, // 146: quilibrium.node.node.pb.CoinsAccountResponse.coins:type_name -> quilibrium.node.node.pb.CoinInfo 80, // 147: quilibrium.node.node.pb.PendingTransactionsAccountResponse.pending_transactions:type_name -> quilibrium.node.node.pb.PendingTransactionInfo 61, // 148: quilibrium.node.node.pb.RevokeAccountResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 29, // 149: quilibrium.node.node.pb.AllowCoinResponse.allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef 61, // 150: quilibrium.node.node.pb.AllowCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 36, // 151: quilibrium.node.node.pb.MergeCoinResponse.coin:type_name -> quilibrium.node.node.pb.CoinRef 61, // 152: quilibrium.node.node.pb.MergeCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 79, // 153: quilibrium.node.node.pb.MintCoinResponse.coins:type_name -> quilibrium.node.node.pb.CoinInfo 61, // 154: quilibrium.node.node.pb.MintCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 36, // 155: quilibrium.node.node.pb.MutualReceiveCoinResponse.coin:type_name -> quilibrium.node.node.pb.CoinRef 61, // 156: quilibrium.node.node.pb.MutualReceiveCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 61, // 157: quilibrium.node.node.pb.MutualTransferCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 61, // 158: quilibrium.node.node.pb.RevokeCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 36, // 159: quilibrium.node.node.pb.SplitCoinResponse.coins:type_name -> quilibrium.node.node.pb.CoinRef 61, // 160: quilibrium.node.node.pb.SplitCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 37, // 161: quilibrium.node.node.pb.TransferCoinResponse.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef 61, // 162: quilibrium.node.node.pb.TransferCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 36, // 163: quilibrium.node.node.pb.ApprovePendingTransactionResponse.coin:type_name -> quilibrium.node.node.pb.CoinRef 61, // 164: quilibrium.node.node.pb.ApprovePendingTransactionResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 61, // 165: quilibrium.node.node.pb.RejectPendingTransactionResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData 19, // 166: quilibrium.node.node.pb.ValidationService.PerformValidation:input_type -> quilibrium.node.node.pb.ValidationMessage 20, // 167: quilibrium.node.node.pb.ValidationService.Sync:input_type -> quilibrium.node.node.pb.SyncRequest 0, // 168: quilibrium.node.node.pb.NodeService.GetFrames:input_type -> quilibrium.node.node.pb.GetFramesRequest 1, // 169: quilibrium.node.node.pb.NodeService.GetFrameInfo:input_type -> quilibrium.node.node.pb.GetFrameInfoRequest 2, // 170: quilibrium.node.node.pb.NodeService.GetPeerInfo:input_type -> quilibrium.node.node.pb.GetPeerInfoRequest 3, // 171: quilibrium.node.node.pb.NodeService.GetNodeInfo:input_type -> quilibrium.node.node.pb.GetNodeInfoRequest 4, // 172: quilibrium.node.node.pb.NodeService.GetNetworkInfo:input_type -> quilibrium.node.node.pb.GetNetworkInfoRequest 15, // 173: quilibrium.node.node.pb.NodeService.GetTokenInfo:input_type -> quilibrium.node.node.pb.GetTokenInfoRequest 22, // 174: quilibrium.node.node.pb.NodeService.GetPeerManifests:input_type -> quilibrium.node.node.pb.GetPeerManifestsRequest 63, // 175: quilibrium.node.node.pb.AccountService.Allow:input_type -> quilibrium.node.node.pb.DecryptableAllowAccountRequest 64, // 176: quilibrium.node.node.pb.AccountService.GetBalance:input_type -> quilibrium.node.node.pb.DecryptableBalanceAccountRequest 65, // 177: quilibrium.node.node.pb.AccountService.ListCoins:input_type -> quilibrium.node.node.pb.DecryptableCoinsAccountRequest 67, // 178: quilibrium.node.node.pb.AccountService.ListPendingTransactions:input_type -> quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest 66, // 179: quilibrium.node.node.pb.AccountService.Revoke:input_type -> quilibrium.node.node.pb.DecryptableRevokeAccountRequest 68, // 180: quilibrium.node.node.pb.CoinService.Allow:input_type -> quilibrium.node.node.pb.DecryptableAllowCoinRequest 69, // 181: quilibrium.node.node.pb.CoinService.Intersect:input_type -> quilibrium.node.node.pb.DecryptableIntersectCoinRequest 70, // 182: quilibrium.node.node.pb.CoinService.Merge:input_type -> quilibrium.node.node.pb.DecryptableMergeCoinRequest 71, // 183: quilibrium.node.node.pb.CoinService.Mint:input_type -> quilibrium.node.node.pb.DecryptableMintCoinRequest 72, // 184: quilibrium.node.node.pb.CoinService.MutualReceive:input_type -> quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest 73, // 185: quilibrium.node.node.pb.CoinService.MutualTransfer:input_type -> quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest 74, // 186: quilibrium.node.node.pb.CoinService.Revoke:input_type -> quilibrium.node.node.pb.DecryptableRevokeCoinRequest 75, // 187: quilibrium.node.node.pb.CoinService.Split:input_type -> quilibrium.node.node.pb.DecryptableSplitCoinRequest 76, // 188: quilibrium.node.node.pb.CoinService.Transfer:input_type -> quilibrium.node.node.pb.DecryptableTransferCoinRequest 77, // 189: quilibrium.node.node.pb.TransactionService.Approve:input_type -> quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest 78, // 190: quilibrium.node.node.pb.TransactionService.Reject:input_type -> quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest 12, // 191: quilibrium.node.node.pb.NodeStats.PutNodeInfo:input_type -> quilibrium.node.node.pb.PutNodeInfoRequest 11, // 192: quilibrium.node.node.pb.NodeStats.PutPeerInfo:input_type -> quilibrium.node.node.pb.PutPeerInfoRequest 19, // 193: quilibrium.node.node.pb.ValidationService.PerformValidation:output_type -> quilibrium.node.node.pb.ValidationMessage 21, // 194: quilibrium.node.node.pb.ValidationService.Sync:output_type -> quilibrium.node.node.pb.SyncResponse 5, // 195: quilibrium.node.node.pb.NodeService.GetFrames:output_type -> quilibrium.node.node.pb.FramesResponse 6, // 196: quilibrium.node.node.pb.NodeService.GetFrameInfo:output_type -> quilibrium.node.node.pb.FrameInfoResponse 8, // 197: quilibrium.node.node.pb.NodeService.GetPeerInfo:output_type -> quilibrium.node.node.pb.PeerInfoResponse 10, // 198: quilibrium.node.node.pb.NodeService.GetNodeInfo:output_type -> quilibrium.node.node.pb.NodeInfoResponse 14, // 199: quilibrium.node.node.pb.NodeService.GetNetworkInfo:output_type -> quilibrium.node.node.pb.NetworkInfoResponse 16, // 200: quilibrium.node.node.pb.NodeService.GetTokenInfo:output_type -> quilibrium.node.node.pb.TokenInfoResponse 40, // 201: quilibrium.node.node.pb.NodeService.GetPeerManifests:output_type -> quilibrium.node.node.pb.PeerManifestsResponse 81, // 202: quilibrium.node.node.pb.AccountService.Allow:output_type -> quilibrium.node.node.pb.AllowAccountResponse 82, // 203: quilibrium.node.node.pb.AccountService.GetBalance:output_type -> quilibrium.node.node.pb.BalanceAccountResponse 83, // 204: quilibrium.node.node.pb.AccountService.ListCoins:output_type -> quilibrium.node.node.pb.CoinsAccountResponse 84, // 205: quilibrium.node.node.pb.AccountService.ListPendingTransactions:output_type -> quilibrium.node.node.pb.PendingTransactionsAccountResponse 85, // 206: quilibrium.node.node.pb.AccountService.Revoke:output_type -> quilibrium.node.node.pb.RevokeAccountResponse 86, // 207: quilibrium.node.node.pb.CoinService.Allow:output_type -> quilibrium.node.node.pb.AllowCoinResponse 87, // 208: quilibrium.node.node.pb.CoinService.Intersect:output_type -> quilibrium.node.node.pb.IntersectCoinResponse 88, // 209: quilibrium.node.node.pb.CoinService.Merge:output_type -> quilibrium.node.node.pb.MergeCoinResponse 89, // 210: quilibrium.node.node.pb.CoinService.Mint:output_type -> quilibrium.node.node.pb.MintCoinResponse 90, // 211: quilibrium.node.node.pb.CoinService.MutualReceive:output_type -> quilibrium.node.node.pb.MutualReceiveCoinResponse 91, // 212: quilibrium.node.node.pb.CoinService.MutualTransfer:output_type -> quilibrium.node.node.pb.MutualTransferCoinResponse 92, // 213: quilibrium.node.node.pb.CoinService.Revoke:output_type -> quilibrium.node.node.pb.RevokeCoinResponse 93, // 214: quilibrium.node.node.pb.CoinService.Split:output_type -> quilibrium.node.node.pb.SplitCoinResponse 94, // 215: quilibrium.node.node.pb.CoinService.Transfer:output_type -> quilibrium.node.node.pb.TransferCoinResponse 95, // 216: quilibrium.node.node.pb.TransactionService.Approve:output_type -> quilibrium.node.node.pb.ApprovePendingTransactionResponse 96, // 217: quilibrium.node.node.pb.TransactionService.Reject:output_type -> quilibrium.node.node.pb.RejectPendingTransactionResponse 13, // 218: quilibrium.node.node.pb.NodeStats.PutNodeInfo:output_type -> quilibrium.node.node.pb.PutResponse 13, // 219: quilibrium.node.node.pb.NodeStats.PutPeerInfo:output_type -> quilibrium.node.node.pb.PutResponse 193, // [193:220] is the sub-list for method output_type 166, // [166:193] is the sub-list for method input_type 166, // [166:166] is the sub-list for extension type_name 166, // [166:166] is the sub-list for extension extendee 0, // [0:166] is the sub-list for field type_name } func init() { file_node_proto_init() } func file_node_proto_init() { if File_node_proto != nil { return } file_clock_proto_init() file_keys_proto_init() if !protoimpl.UnsafeEnabled { file_node_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFramesRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFrameInfoRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetPeerInfoRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNodeInfoRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNetworkInfoRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FramesResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FrameInfoResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PeerInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PeerInfoResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NodeInfoResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PutPeerInfoRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PutNodeInfoRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PutResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkInfoResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTokenInfoRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TokenInfoResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Capability); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SelfTestReport); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ValidationMessage); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SyncRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SyncResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetPeerManifestsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PeerManifest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AnnounceProverRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*OriginatedAccountRef); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ImplicitAccount); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AccountRef); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AccountAllowanceRef); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CoinAllowanceRef); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Coin); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TokenRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TokenRequests); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PreCoinProof); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TokenOutput); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TokenOutputs); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CoinRef); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PendingTransactionRef); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*KeyRef); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Signature); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PeerManifestsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AcceptPendingTransactionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AllowAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AllowCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BalanceAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CoinsAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PendingTransactionsAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*IntersectCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MergeCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MintCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MutualReceiveCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MutualTransferCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RevokeAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RevokeCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SplitCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TransferCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ApprovePendingTransactionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RejectPendingTransactionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InlineKey); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*KeyRing); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Confirmation); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeliveryData); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeliveryMethod); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableAllowAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableBalanceAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableCoinsAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableRevokeAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptablePendingTransactionsAccountRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableAllowCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableIntersectCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableMergeCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableMintCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableMutualReceiveCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableMutualTransferCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableRevokeCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableSplitCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableTransferCoinRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableApprovePendingTransactionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecryptableRejectPendingTransactionRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CoinInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PendingTransactionInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AllowAccountResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BalanceAccountResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CoinsAccountResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PendingTransactionsAccountResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RevokeAccountResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AllowCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*IntersectCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MergeCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MintCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MutualReceiveCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MutualTransferCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RevokeCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SplitCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TransferCoinResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ApprovePendingTransactionResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_node_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RejectPendingTransactionResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } file_node_proto_msgTypes[27].OneofWrappers = []interface{}{ (*AccountRef_OriginatedAccount)(nil), (*AccountRef_ImplicitAccount)(nil), } file_node_proto_msgTypes[31].OneofWrappers = []interface{}{ (*TokenRequest_Transfer)(nil), (*TokenRequest_Split)(nil), (*TokenRequest_Merge)(nil), (*TokenRequest_Mint)(nil), (*TokenRequest_Announce)(nil), } file_node_proto_msgTypes[34].OneofWrappers = []interface{}{ (*TokenOutput_Coin)(nil), (*TokenOutput_Proof)(nil), (*TokenOutput_DeletedCoin)(nil), (*TokenOutput_DeletedProof)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_node_proto_rawDesc, NumEnums: 0, NumMessages: 97, NumExtensions: 0, NumServices: 6, }, GoTypes: file_node_proto_goTypes, DependencyIndexes: file_node_proto_depIdxs, MessageInfos: file_node_proto_msgTypes, }.Build() File_node_proto = out.File file_node_proto_rawDesc = nil file_node_proto_goTypes = nil file_node_proto_depIdxs = nil }