diff --git a/node/protobufs/node.pb.go b/node/protobufs/node.pb.go index f745e9f..8554c75 100644 --- a/node/protobufs/node.pb.go +++ b/node/protobufs/node.pb.go @@ -1647,6 +1647,495 @@ func (x *PeerManifest) GetIncrement() uint32 { return 0 } +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[24] + 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[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 OriginatedAccountRef.ProtoReflect.Descriptor instead. +func (*OriginatedAccountRef) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{24} +} + +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[25] + 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[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 ImplicitAccount.ProtoReflect.Descriptor instead. +func (*ImplicitAccount) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{25} +} + +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[26] + 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[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 AccountRef.ProtoReflect.Descriptor instead. +func (*AccountRef) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{26} +} + +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[27] + 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[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 AccountAllowanceRef.ProtoReflect.Descriptor instead. +func (*AccountAllowanceRef) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{27} +} + +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[28] + 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[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 CoinAllowanceRef.ProtoReflect.Descriptor instead. +func (*CoinAllowanceRef) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{28} +} + +func (x *CoinAllowanceRef) GetAddress() []byte { + if x != nil { + return x.Address + } + 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[29] + 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[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 CoinRef.ProtoReflect.Descriptor instead. +func (*CoinRef) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{29} +} + +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[30] + 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[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 PendingTransactionRef.ProtoReflect.Descriptor instead. +func (*PendingTransactionRef) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{30} +} + +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[31] + 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[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 KeyRef.ProtoReflect.Descriptor instead. +func (*KeyRef) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{31} +} + +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[32] + 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[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 Signature.ProtoReflect.Descriptor instead. +func (*Signature) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{32} +} + +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 @@ -1658,7 +2147,7 @@ type PeerManifestsResponse struct { func (x *PeerManifestsResponse) Reset() { *x = PeerManifestsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_node_proto_msgTypes[24] + mi := &file_node_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1671,7 +2160,7 @@ func (x *PeerManifestsResponse) String() string { func (*PeerManifestsResponse) ProtoMessage() {} func (x *PeerManifestsResponse) ProtoReflect() protoreflect.Message { - mi := &file_node_proto_msgTypes[24] + mi := &file_node_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1684,7 +2173,7 @@ func (x *PeerManifestsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use PeerManifestsResponse.ProtoReflect.Descriptor instead. func (*PeerManifestsResponse) Descriptor() ([]byte, []int) { - return file_node_proto_rawDescGZIP(), []int{24} + return file_node_proto_rawDescGZIP(), []int{33} } func (x *PeerManifestsResponse) GetPeerManifests() []*PeerManifest { @@ -1694,6 +2183,3430 @@ func (x *PeerManifestsResponse) GetPeerManifests() []*PeerManifest { 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[34] + 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[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 AcceptPendingTransactionRequest.ProtoReflect.Descriptor instead. +func (*AcceptPendingTransactionRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{34} +} + +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[35] + 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[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 AllowAccountRequest.ProtoReflect.Descriptor instead. +func (*AllowAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{35} +} + +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[36] + 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[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 AllowCoinRequest.ProtoReflect.Descriptor instead. +func (*AllowCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{36} +} + +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[37] + 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[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 BalanceAccountRequest.ProtoReflect.Descriptor instead. +func (*BalanceAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{37} +} + +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[38] + 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[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 CoinsAccountRequest.ProtoReflect.Descriptor instead. +func (*CoinsAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{38} +} + +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[39] + 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[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 PendingTransactionsAccountRequest.ProtoReflect.Descriptor instead. +func (*PendingTransactionsAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{39} +} + +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[40] + 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[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 IntersectCoinRequest.ProtoReflect.Descriptor instead. +func (*IntersectCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{40} +} + +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 *Signature `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"` +} + +func (x *MergeCoinRequest) Reset() { + *x = MergeCoinRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_node_proto_msgTypes[41] + 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[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 MergeCoinRequest.ProtoReflect.Descriptor instead. +func (*MergeCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{41} +} + +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() *Signature { + 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 *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` +} + +func (x *MintCoinRequest) Reset() { + *x = MintCoinRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_node_proto_msgTypes[42] + 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[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 MintCoinRequest.ProtoReflect.Descriptor instead. +func (*MintCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{42} +} + +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() *Signature { + 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[43] + 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[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 MutualReceiveCoinRequest.ProtoReflect.Descriptor instead. +func (*MutualReceiveCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{43} +} + +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[44] + 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[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 MutualTransferCoinRequest.ProtoReflect.Descriptor instead. +func (*MutualTransferCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{44} +} + +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[45] + 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[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 RevokeAccountRequest.ProtoReflect.Descriptor instead. +func (*RevokeAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{45} +} + +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[46] + 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[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 RevokeCoinRequest.ProtoReflect.Descriptor instead. +func (*RevokeCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{46} +} + +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 *Signature `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"` +} + +func (x *SplitCoinRequest) Reset() { + *x = SplitCoinRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_node_proto_msgTypes[47] + 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[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 SplitCoinRequest.ProtoReflect.Descriptor instead. +func (*SplitCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{47} +} + +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() *Signature { + 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 *Signature `protobuf:"bytes,7,opt,name=signature,proto3" json:"signature,omitempty"` +} + +func (x *TransferCoinRequest) Reset() { + *x = TransferCoinRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_node_proto_msgTypes[48] + 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[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 TransferCoinRequest.ProtoReflect.Descriptor instead. +func (*TransferCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{48} +} + +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() *Signature { + 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[49] + 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[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 ApprovePendingTransactionRequest.ProtoReflect.Descriptor instead. +func (*ApprovePendingTransactionRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{49} +} + +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[50] + 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[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 RejectPendingTransactionRequest.ProtoReflect.Descriptor instead. +func (*RejectPendingTransactionRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{50} +} + +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[51] + 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[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 InlineKey.ProtoReflect.Descriptor instead. +func (*InlineKey) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{51} +} + +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[52] + 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[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 KeyRing.ProtoReflect.Descriptor instead. +func (*KeyRing) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{52} +} + +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[53] + 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[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 Confirmation.ProtoReflect.Descriptor instead. +func (*Confirmation) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{53} +} + +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[54] + 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[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 DeliveryData.ProtoReflect.Descriptor instead. +func (*DeliveryData) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{54} +} + +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[55] + 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[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 DeliveryMethod.ProtoReflect.Descriptor instead. +func (*DeliveryMethod) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{55} +} + +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[56] + 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[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 DecryptableAllowAccountRequest.ProtoReflect.Descriptor instead. +func (*DecryptableAllowAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{56} +} + +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[57] + 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[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 DecryptableBalanceAccountRequest.ProtoReflect.Descriptor instead. +func (*DecryptableBalanceAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{57} +} + +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[58] + 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[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 DecryptableCoinsAccountRequest.ProtoReflect.Descriptor instead. +func (*DecryptableCoinsAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{58} +} + +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[59] + 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[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 DecryptableRevokeAccountRequest.ProtoReflect.Descriptor instead. +func (*DecryptableRevokeAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{59} +} + +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[60] + 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[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 DecryptablePendingTransactionsAccountRequest.ProtoReflect.Descriptor instead. +func (*DecryptablePendingTransactionsAccountRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{60} +} + +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[61] + 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[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 DecryptableAllowCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableAllowCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{61} +} + +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[62] + 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[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 DecryptableIntersectCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableIntersectCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{62} +} + +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[63] + 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[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 DecryptableMergeCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableMergeCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{63} +} + +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[64] + 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[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 DecryptableMintCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableMintCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{64} +} + +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[65] + 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[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 DecryptableMutualReceiveCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableMutualReceiveCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{65} +} + +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[66] + 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[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 DecryptableMutualTransferCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableMutualTransferCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{66} +} + +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[67] + 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[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 DecryptableRevokeCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableRevokeCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{67} +} + +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[68] + 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[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 DecryptableSplitCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableSplitCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{68} +} + +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[69] + 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[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 DecryptableTransferCoinRequest.ProtoReflect.Descriptor instead. +func (*DecryptableTransferCoinRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{69} +} + +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[70] + 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[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 DecryptableApprovePendingTransactionRequest.ProtoReflect.Descriptor instead. +func (*DecryptableApprovePendingTransactionRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{70} +} + +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[71] + 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[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 DecryptableRejectPendingTransactionRequest.ProtoReflect.Descriptor instead. +func (*DecryptableRejectPendingTransactionRequest) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{71} +} + +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[72] + 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[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 CoinInfo.ProtoReflect.Descriptor instead. +func (*CoinInfo) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{72} +} + +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[73] + 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[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 PendingTransactionInfo.ProtoReflect.Descriptor instead. +func (*PendingTransactionInfo) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{73} +} + +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[74] + 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[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 AllowAccountResponse.ProtoReflect.Descriptor instead. +func (*AllowAccountResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{74} +} + +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[75] + 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[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 BalanceAccountResponse.ProtoReflect.Descriptor instead. +func (*BalanceAccountResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{75} +} + +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[76] + 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[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 CoinsAccountResponse.ProtoReflect.Descriptor instead. +func (*CoinsAccountResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{76} +} + +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[77] + 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[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 PendingTransactionsAccountResponse.ProtoReflect.Descriptor instead. +func (*PendingTransactionsAccountResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{77} +} + +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[78] + 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[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 RevokeAccountResponse.ProtoReflect.Descriptor instead. +func (*RevokeAccountResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{78} +} + +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[79] + 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[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 AllowCoinResponse.ProtoReflect.Descriptor instead. +func (*AllowCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{79} +} + +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[80] + 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[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 IntersectCoinResponse.ProtoReflect.Descriptor instead. +func (*IntersectCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{80} +} + +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[81] + 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[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 MergeCoinResponse.ProtoReflect.Descriptor instead. +func (*MergeCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{81} +} + +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[82] + 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[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 MintCoinResponse.ProtoReflect.Descriptor instead. +func (*MintCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{82} +} + +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[83] + 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[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 MutualReceiveCoinResponse.ProtoReflect.Descriptor instead. +func (*MutualReceiveCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{83} +} + +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[84] + 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[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 MutualTransferCoinResponse.ProtoReflect.Descriptor instead. +func (*MutualTransferCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{84} +} + +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[85] + 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[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 RevokeCoinResponse.ProtoReflect.Descriptor instead. +func (*RevokeCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{85} +} + +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[86] + 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[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 SplitCoinResponse.ProtoReflect.Descriptor instead. +func (*SplitCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{86} +} + +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[87] + 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[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 TransferCoinResponse.ProtoReflect.Descriptor instead. +func (*TransferCoinResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{87} +} + +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[88] + 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[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 ApprovePendingTransactionResponse.ProtoReflect.Descriptor instead. +func (*ApprovePendingTransactionResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{88} +} + +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[89] + 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[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 RejectPendingTransactionResponse.ProtoReflect.Descriptor instead. +func (*RejectPendingTransactionResponse) Descriptor() ([]byte, []int) { + return file_node_proto_rawDescGZIP(), []int{89} +} + +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{ @@ -1933,92 +5846,1015 @@ var file_node_proto_rawDesc = []byte{ 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, - 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 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, 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, + 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 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, 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, 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, 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, + 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, 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, + 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, 0xbb, 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, 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, 0xb7, 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, 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, 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, 0xd6, 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, 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, 0xe7, 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, 0x40, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x18, 0x07, 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, 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 ( @@ -2033,77 +6869,313 @@ func file_node_proto_rawDescGZIP() []byte { return file_node_proto_rawDescData } -var file_node_proto_msgTypes = make([]protoimpl.MessageInfo, 25) +var file_node_proto_msgTypes = make([]protoimpl.MessageInfo, 90) 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 - (*PeerManifestsResponse)(nil), // 24: quilibrium.node.node.pb.PeerManifestsResponse - (*ClockFrame)(nil), // 25: quilibrium.node.clock.pb.ClockFrame - (*ClockFramesRequest)(nil), // 26: quilibrium.node.clock.pb.ClockFramesRequest - (*ClockFramesResponse)(nil), // 27: quilibrium.node.clock.pb.ClockFramesResponse + (*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 + (*OriginatedAccountRef)(nil), // 24: quilibrium.node.node.pb.OriginatedAccountRef + (*ImplicitAccount)(nil), // 25: quilibrium.node.node.pb.ImplicitAccount + (*AccountRef)(nil), // 26: quilibrium.node.node.pb.AccountRef + (*AccountAllowanceRef)(nil), // 27: quilibrium.node.node.pb.AccountAllowanceRef + (*CoinAllowanceRef)(nil), // 28: quilibrium.node.node.pb.CoinAllowanceRef + (*CoinRef)(nil), // 29: quilibrium.node.node.pb.CoinRef + (*PendingTransactionRef)(nil), // 30: quilibrium.node.node.pb.PendingTransactionRef + (*KeyRef)(nil), // 31: quilibrium.node.node.pb.KeyRef + (*Signature)(nil), // 32: quilibrium.node.node.pb.Signature + (*PeerManifestsResponse)(nil), // 33: quilibrium.node.node.pb.PeerManifestsResponse + (*AcceptPendingTransactionRequest)(nil), // 34: quilibrium.node.node.pb.AcceptPendingTransactionRequest + (*AllowAccountRequest)(nil), // 35: quilibrium.node.node.pb.AllowAccountRequest + (*AllowCoinRequest)(nil), // 36: quilibrium.node.node.pb.AllowCoinRequest + (*BalanceAccountRequest)(nil), // 37: quilibrium.node.node.pb.BalanceAccountRequest + (*CoinsAccountRequest)(nil), // 38: quilibrium.node.node.pb.CoinsAccountRequest + (*PendingTransactionsAccountRequest)(nil), // 39: quilibrium.node.node.pb.PendingTransactionsAccountRequest + (*IntersectCoinRequest)(nil), // 40: quilibrium.node.node.pb.IntersectCoinRequest + (*MergeCoinRequest)(nil), // 41: quilibrium.node.node.pb.MergeCoinRequest + (*MintCoinRequest)(nil), // 42: quilibrium.node.node.pb.MintCoinRequest + (*MutualReceiveCoinRequest)(nil), // 43: quilibrium.node.node.pb.MutualReceiveCoinRequest + (*MutualTransferCoinRequest)(nil), // 44: quilibrium.node.node.pb.MutualTransferCoinRequest + (*RevokeAccountRequest)(nil), // 45: quilibrium.node.node.pb.RevokeAccountRequest + (*RevokeCoinRequest)(nil), // 46: quilibrium.node.node.pb.RevokeCoinRequest + (*SplitCoinRequest)(nil), // 47: quilibrium.node.node.pb.SplitCoinRequest + (*TransferCoinRequest)(nil), // 48: quilibrium.node.node.pb.TransferCoinRequest + (*ApprovePendingTransactionRequest)(nil), // 49: quilibrium.node.node.pb.ApprovePendingTransactionRequest + (*RejectPendingTransactionRequest)(nil), // 50: quilibrium.node.node.pb.RejectPendingTransactionRequest + (*InlineKey)(nil), // 51: quilibrium.node.node.pb.InlineKey + (*KeyRing)(nil), // 52: quilibrium.node.node.pb.KeyRing + (*Confirmation)(nil), // 53: quilibrium.node.node.pb.Confirmation + (*DeliveryData)(nil), // 54: quilibrium.node.node.pb.DeliveryData + (*DeliveryMethod)(nil), // 55: quilibrium.node.node.pb.DeliveryMethod + (*DecryptableAllowAccountRequest)(nil), // 56: quilibrium.node.node.pb.DecryptableAllowAccountRequest + (*DecryptableBalanceAccountRequest)(nil), // 57: quilibrium.node.node.pb.DecryptableBalanceAccountRequest + (*DecryptableCoinsAccountRequest)(nil), // 58: quilibrium.node.node.pb.DecryptableCoinsAccountRequest + (*DecryptableRevokeAccountRequest)(nil), // 59: quilibrium.node.node.pb.DecryptableRevokeAccountRequest + (*DecryptablePendingTransactionsAccountRequest)(nil), // 60: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest + (*DecryptableAllowCoinRequest)(nil), // 61: quilibrium.node.node.pb.DecryptableAllowCoinRequest + (*DecryptableIntersectCoinRequest)(nil), // 62: quilibrium.node.node.pb.DecryptableIntersectCoinRequest + (*DecryptableMergeCoinRequest)(nil), // 63: quilibrium.node.node.pb.DecryptableMergeCoinRequest + (*DecryptableMintCoinRequest)(nil), // 64: quilibrium.node.node.pb.DecryptableMintCoinRequest + (*DecryptableMutualReceiveCoinRequest)(nil), // 65: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest + (*DecryptableMutualTransferCoinRequest)(nil), // 66: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest + (*DecryptableRevokeCoinRequest)(nil), // 67: quilibrium.node.node.pb.DecryptableRevokeCoinRequest + (*DecryptableSplitCoinRequest)(nil), // 68: quilibrium.node.node.pb.DecryptableSplitCoinRequest + (*DecryptableTransferCoinRequest)(nil), // 69: quilibrium.node.node.pb.DecryptableTransferCoinRequest + (*DecryptableApprovePendingTransactionRequest)(nil), // 70: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest + (*DecryptableRejectPendingTransactionRequest)(nil), // 71: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest + (*CoinInfo)(nil), // 72: quilibrium.node.node.pb.CoinInfo + (*PendingTransactionInfo)(nil), // 73: quilibrium.node.node.pb.PendingTransactionInfo + (*AllowAccountResponse)(nil), // 74: quilibrium.node.node.pb.AllowAccountResponse + (*BalanceAccountResponse)(nil), // 75: quilibrium.node.node.pb.BalanceAccountResponse + (*CoinsAccountResponse)(nil), // 76: quilibrium.node.node.pb.CoinsAccountResponse + (*PendingTransactionsAccountResponse)(nil), // 77: quilibrium.node.node.pb.PendingTransactionsAccountResponse + (*RevokeAccountResponse)(nil), // 78: quilibrium.node.node.pb.RevokeAccountResponse + (*AllowCoinResponse)(nil), // 79: quilibrium.node.node.pb.AllowCoinResponse + (*IntersectCoinResponse)(nil), // 80: quilibrium.node.node.pb.IntersectCoinResponse + (*MergeCoinResponse)(nil), // 81: quilibrium.node.node.pb.MergeCoinResponse + (*MintCoinResponse)(nil), // 82: quilibrium.node.node.pb.MintCoinResponse + (*MutualReceiveCoinResponse)(nil), // 83: quilibrium.node.node.pb.MutualReceiveCoinResponse + (*MutualTransferCoinResponse)(nil), // 84: quilibrium.node.node.pb.MutualTransferCoinResponse + (*RevokeCoinResponse)(nil), // 85: quilibrium.node.node.pb.RevokeCoinResponse + (*SplitCoinResponse)(nil), // 86: quilibrium.node.node.pb.SplitCoinResponse + (*TransferCoinResponse)(nil), // 87: quilibrium.node.node.pb.TransferCoinResponse + (*ApprovePendingTransactionResponse)(nil), // 88: quilibrium.node.node.pb.ApprovePendingTransactionResponse + (*RejectPendingTransactionResponse)(nil), // 89: quilibrium.node.node.pb.RejectPendingTransactionResponse + (*ClockFrame)(nil), // 90: quilibrium.node.clock.pb.ClockFrame + (*ClockFramesRequest)(nil), // 91: quilibrium.node.clock.pb.ClockFramesRequest + (*ClockFramesResponse)(nil), // 92: quilibrium.node.clock.pb.ClockFramesResponse } var file_node_proto_depIdxs = []int32{ - 25, // 0: quilibrium.node.node.pb.FramesResponse.truncated_clock_frames:type_name -> quilibrium.node.clock.pb.ClockFrame - 25, // 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 - 26, // 8: quilibrium.node.node.pb.SyncRequest.frames_request:type_name -> quilibrium.node.clock.pb.ClockFramesRequest - 27, // 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 - 23, // 11: quilibrium.node.node.pb.PeerManifestsResponse.peer_manifests:type_name -> quilibrium.node.node.pb.PeerManifest - 19, // 12: quilibrium.node.node.pb.ValidationService.PerformValidation:input_type -> quilibrium.node.node.pb.ValidationMessage - 20, // 13: quilibrium.node.node.pb.ValidationService.Sync:input_type -> quilibrium.node.node.pb.SyncRequest - 0, // 14: quilibrium.node.node.pb.NodeService.GetFrames:input_type -> quilibrium.node.node.pb.GetFramesRequest - 1, // 15: quilibrium.node.node.pb.NodeService.GetFrameInfo:input_type -> quilibrium.node.node.pb.GetFrameInfoRequest - 2, // 16: quilibrium.node.node.pb.NodeService.GetPeerInfo:input_type -> quilibrium.node.node.pb.GetPeerInfoRequest - 3, // 17: quilibrium.node.node.pb.NodeService.GetNodeInfo:input_type -> quilibrium.node.node.pb.GetNodeInfoRequest - 4, // 18: quilibrium.node.node.pb.NodeService.GetNetworkInfo:input_type -> quilibrium.node.node.pb.GetNetworkInfoRequest - 15, // 19: quilibrium.node.node.pb.NodeService.GetTokenInfo:input_type -> quilibrium.node.node.pb.GetTokenInfoRequest - 22, // 20: quilibrium.node.node.pb.NodeService.GetPeerManifests:input_type -> quilibrium.node.node.pb.GetPeerManifestsRequest - 12, // 21: quilibrium.node.node.pb.NodeStats.PutNodeInfo:input_type -> quilibrium.node.node.pb.PutNodeInfoRequest - 11, // 22: quilibrium.node.node.pb.NodeStats.PutPeerInfo:input_type -> quilibrium.node.node.pb.PutPeerInfoRequest - 19, // 23: quilibrium.node.node.pb.ValidationService.PerformValidation:output_type -> quilibrium.node.node.pb.ValidationMessage - 21, // 24: quilibrium.node.node.pb.ValidationService.Sync:output_type -> quilibrium.node.node.pb.SyncResponse - 5, // 25: quilibrium.node.node.pb.NodeService.GetFrames:output_type -> quilibrium.node.node.pb.FramesResponse - 6, // 26: quilibrium.node.node.pb.NodeService.GetFrameInfo:output_type -> quilibrium.node.node.pb.FrameInfoResponse - 8, // 27: quilibrium.node.node.pb.NodeService.GetPeerInfo:output_type -> quilibrium.node.node.pb.PeerInfoResponse - 10, // 28: quilibrium.node.node.pb.NodeService.GetNodeInfo:output_type -> quilibrium.node.node.pb.NodeInfoResponse - 14, // 29: quilibrium.node.node.pb.NodeService.GetNetworkInfo:output_type -> quilibrium.node.node.pb.NetworkInfoResponse - 16, // 30: quilibrium.node.node.pb.NodeService.GetTokenInfo:output_type -> quilibrium.node.node.pb.TokenInfoResponse - 24, // 31: quilibrium.node.node.pb.NodeService.GetPeerManifests:output_type -> quilibrium.node.node.pb.PeerManifestsResponse - 13, // 32: quilibrium.node.node.pb.NodeStats.PutNodeInfo:output_type -> quilibrium.node.node.pb.PutResponse - 13, // 33: quilibrium.node.node.pb.NodeStats.PutPeerInfo:output_type -> quilibrium.node.node.pb.PutResponse - 23, // [23:34] is the sub-list for method output_type - 12, // [12:23] is the sub-list for method input_type - 12, // [12:12] is the sub-list for extension type_name - 12, // [12:12] is the sub-list for extension extendee - 0, // [0:12] is the sub-list for field type_name + 90, // 0: quilibrium.node.node.pb.FramesResponse.truncated_clock_frames:type_name -> quilibrium.node.clock.pb.ClockFrame + 90, // 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 + 91, // 8: quilibrium.node.node.pb.SyncRequest.frames_request:type_name -> quilibrium.node.clock.pb.ClockFramesRequest + 92, // 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 + 24, // 11: quilibrium.node.node.pb.AccountRef.originated_account:type_name -> quilibrium.node.node.pb.OriginatedAccountRef + 25, // 12: quilibrium.node.node.pb.AccountRef.implicit_account:type_name -> quilibrium.node.node.pb.ImplicitAccount + 31, // 13: quilibrium.node.node.pb.Signature.key:type_name -> quilibrium.node.node.pb.KeyRef + 23, // 14: quilibrium.node.node.pb.PeerManifestsResponse.peer_manifests:type_name -> quilibrium.node.node.pb.PeerManifest + 30, // 15: quilibrium.node.node.pb.AcceptPendingTransactionRequest.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef + 32, // 16: quilibrium.node.node.pb.AcceptPendingTransactionRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 26, // 17: quilibrium.node.node.pb.AllowAccountRequest.of_account:type_name -> quilibrium.node.node.pb.AccountRef + 26, // 18: quilibrium.node.node.pb.AllowAccountRequest.permitted_account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 19: quilibrium.node.node.pb.AllowAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 20: quilibrium.node.node.pb.AllowAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 29, // 21: quilibrium.node.node.pb.AllowCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef + 26, // 22: quilibrium.node.node.pb.AllowCoinRequest.permitted_account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 23: quilibrium.node.node.pb.AllowCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 28, // 24: quilibrium.node.node.pb.AllowCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 32, // 25: quilibrium.node.node.pb.AllowCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 26, // 26: quilibrium.node.node.pb.BalanceAccountRequest.account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 27: quilibrium.node.node.pb.BalanceAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 28: quilibrium.node.node.pb.BalanceAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 26, // 29: quilibrium.node.node.pb.CoinsAccountRequest.account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 30: quilibrium.node.node.pb.CoinsAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 31: quilibrium.node.node.pb.CoinsAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 26, // 32: quilibrium.node.node.pb.PendingTransactionsAccountRequest.account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 33: quilibrium.node.node.pb.PendingTransactionsAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 34: quilibrium.node.node.pb.PendingTransactionsAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 27, // 35: quilibrium.node.node.pb.IntersectCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 28, // 36: quilibrium.node.node.pb.IntersectCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 29, // 37: quilibrium.node.node.pb.IntersectCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef + 29, // 38: quilibrium.node.node.pb.MergeCoinRequest.coins:type_name -> quilibrium.node.node.pb.CoinRef + 27, // 39: quilibrium.node.node.pb.MergeCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 28, // 40: quilibrium.node.node.pb.MergeCoinRequest.coin_allowances:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 32, // 41: quilibrium.node.node.pb.MergeCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 27, // 42: quilibrium.node.node.pb.MintCoinRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 43: quilibrium.node.node.pb.MintCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 26, // 44: quilibrium.node.node.pb.MutualReceiveCoinRequest.to_account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 45: quilibrium.node.node.pb.MutualReceiveCoinRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 46: quilibrium.node.node.pb.MutualReceiveCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 29, // 47: quilibrium.node.node.pb.MutualTransferCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef + 27, // 48: quilibrium.node.node.pb.MutualTransferCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 28, // 49: quilibrium.node.node.pb.MutualTransferCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 32, // 50: quilibrium.node.node.pb.MutualTransferCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 26, // 51: quilibrium.node.node.pb.RevokeAccountRequest.of_account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 52: quilibrium.node.node.pb.RevokeAccountRequest.revoked_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 27, // 53: quilibrium.node.node.pb.RevokeAccountRequest.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 54: quilibrium.node.node.pb.RevokeAccountRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 29, // 55: quilibrium.node.node.pb.RevokeCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef + 28, // 56: quilibrium.node.node.pb.RevokeCoinRequest.revoked_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 27, // 57: quilibrium.node.node.pb.RevokeCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 28, // 58: quilibrium.node.node.pb.RevokeCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 32, // 59: quilibrium.node.node.pb.RevokeCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 29, // 60: quilibrium.node.node.pb.SplitCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef + 27, // 61: quilibrium.node.node.pb.SplitCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 28, // 62: quilibrium.node.node.pb.SplitCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 32, // 63: quilibrium.node.node.pb.SplitCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 26, // 64: quilibrium.node.node.pb.TransferCoinRequest.to_account:type_name -> quilibrium.node.node.pb.AccountRef + 26, // 65: quilibrium.node.node.pb.TransferCoinRequest.refund_account:type_name -> quilibrium.node.node.pb.AccountRef + 29, // 66: quilibrium.node.node.pb.TransferCoinRequest.of_coin:type_name -> quilibrium.node.node.pb.CoinRef + 27, // 67: quilibrium.node.node.pb.TransferCoinRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 28, // 68: quilibrium.node.node.pb.TransferCoinRequest.coin_allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 32, // 69: quilibrium.node.node.pb.TransferCoinRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 30, // 70: quilibrium.node.node.pb.ApprovePendingTransactionRequest.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef + 27, // 71: quilibrium.node.node.pb.ApprovePendingTransactionRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 72: quilibrium.node.node.pb.ApprovePendingTransactionRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 30, // 73: quilibrium.node.node.pb.RejectPendingTransactionRequest.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef + 27, // 74: quilibrium.node.node.pb.RejectPendingTransactionRequest.account_allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 32, // 75: quilibrium.node.node.pb.RejectPendingTransactionRequest.signature:type_name -> quilibrium.node.node.pb.Signature + 51, // 76: quilibrium.node.node.pb.KeyRing.keys:type_name -> quilibrium.node.node.pb.InlineKey + 51, // 77: quilibrium.node.node.pb.DeliveryData.shared_key:type_name -> quilibrium.node.node.pb.InlineKey + 53, // 78: quilibrium.node.node.pb.DeliveryData.confirmation:type_name -> quilibrium.node.node.pb.Confirmation + 35, // 79: quilibrium.node.node.pb.DecryptableAllowAccountRequest.request:type_name -> quilibrium.node.node.pb.AllowAccountRequest + 52, // 80: quilibrium.node.node.pb.DecryptableAllowAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 81: quilibrium.node.node.pb.DecryptableAllowAccountRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 37, // 82: quilibrium.node.node.pb.DecryptableBalanceAccountRequest.request:type_name -> quilibrium.node.node.pb.BalanceAccountRequest + 52, // 83: quilibrium.node.node.pb.DecryptableBalanceAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 38, // 84: quilibrium.node.node.pb.DecryptableCoinsAccountRequest.request:type_name -> quilibrium.node.node.pb.CoinsAccountRequest + 52, // 85: quilibrium.node.node.pb.DecryptableCoinsAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 45, // 86: quilibrium.node.node.pb.DecryptableRevokeAccountRequest.request:type_name -> quilibrium.node.node.pb.RevokeAccountRequest + 52, // 87: quilibrium.node.node.pb.DecryptableRevokeAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 88: quilibrium.node.node.pb.DecryptableRevokeAccountRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 39, // 89: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest.request:type_name -> quilibrium.node.node.pb.PendingTransactionsAccountRequest + 52, // 90: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 91: quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 36, // 92: quilibrium.node.node.pb.DecryptableAllowCoinRequest.request:type_name -> quilibrium.node.node.pb.AllowCoinRequest + 52, // 93: quilibrium.node.node.pb.DecryptableAllowCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 94: quilibrium.node.node.pb.DecryptableAllowCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 40, // 95: quilibrium.node.node.pb.DecryptableIntersectCoinRequest.request:type_name -> quilibrium.node.node.pb.IntersectCoinRequest + 52, // 96: quilibrium.node.node.pb.DecryptableIntersectCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 97: quilibrium.node.node.pb.DecryptableIntersectCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 41, // 98: quilibrium.node.node.pb.DecryptableMergeCoinRequest.request:type_name -> quilibrium.node.node.pb.MergeCoinRequest + 52, // 99: quilibrium.node.node.pb.DecryptableMergeCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 100: quilibrium.node.node.pb.DecryptableMergeCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 42, // 101: quilibrium.node.node.pb.DecryptableMintCoinRequest.request:type_name -> quilibrium.node.node.pb.MintCoinRequest + 52, // 102: quilibrium.node.node.pb.DecryptableMintCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 103: quilibrium.node.node.pb.DecryptableMintCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 43, // 104: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest.request:type_name -> quilibrium.node.node.pb.MutualReceiveCoinRequest + 52, // 105: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 106: quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 44, // 107: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest.request:type_name -> quilibrium.node.node.pb.MutualTransferCoinRequest + 52, // 108: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 109: quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 46, // 110: quilibrium.node.node.pb.DecryptableRevokeCoinRequest.request:type_name -> quilibrium.node.node.pb.RevokeCoinRequest + 52, // 111: quilibrium.node.node.pb.DecryptableRevokeCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 112: quilibrium.node.node.pb.DecryptableRevokeCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 47, // 113: quilibrium.node.node.pb.DecryptableSplitCoinRequest.request:type_name -> quilibrium.node.node.pb.SplitCoinRequest + 52, // 114: quilibrium.node.node.pb.DecryptableSplitCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 115: quilibrium.node.node.pb.DecryptableSplitCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 48, // 116: quilibrium.node.node.pb.DecryptableTransferCoinRequest.request:type_name -> quilibrium.node.node.pb.TransferCoinRequest + 52, // 117: quilibrium.node.node.pb.DecryptableTransferCoinRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 118: quilibrium.node.node.pb.DecryptableTransferCoinRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 49, // 119: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest.request:type_name -> quilibrium.node.node.pb.ApprovePendingTransactionRequest + 52, // 120: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 121: quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 50, // 122: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest.request:type_name -> quilibrium.node.node.pb.RejectPendingTransactionRequest + 52, // 123: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest.key_ring:type_name -> quilibrium.node.node.pb.KeyRing + 55, // 124: quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest.delivery_method:type_name -> quilibrium.node.node.pb.DeliveryMethod + 29, // 125: quilibrium.node.node.pb.CoinInfo.coin:type_name -> quilibrium.node.node.pb.CoinRef + 30, // 126: quilibrium.node.node.pb.PendingTransactionInfo.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef + 72, // 127: quilibrium.node.node.pb.PendingTransactionInfo.coin:type_name -> quilibrium.node.node.pb.CoinInfo + 26, // 128: quilibrium.node.node.pb.PendingTransactionInfo.refund_account:type_name -> quilibrium.node.node.pb.AccountRef + 27, // 129: quilibrium.node.node.pb.AllowAccountResponse.allowance:type_name -> quilibrium.node.node.pb.AccountAllowanceRef + 54, // 130: quilibrium.node.node.pb.AllowAccountResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 72, // 131: quilibrium.node.node.pb.CoinsAccountResponse.coins:type_name -> quilibrium.node.node.pb.CoinInfo + 73, // 132: quilibrium.node.node.pb.PendingTransactionsAccountResponse.pending_transactions:type_name -> quilibrium.node.node.pb.PendingTransactionInfo + 54, // 133: quilibrium.node.node.pb.RevokeAccountResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 28, // 134: quilibrium.node.node.pb.AllowCoinResponse.allowance:type_name -> quilibrium.node.node.pb.CoinAllowanceRef + 54, // 135: quilibrium.node.node.pb.AllowCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 29, // 136: quilibrium.node.node.pb.MergeCoinResponse.coin:type_name -> quilibrium.node.node.pb.CoinRef + 54, // 137: quilibrium.node.node.pb.MergeCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 72, // 138: quilibrium.node.node.pb.MintCoinResponse.coins:type_name -> quilibrium.node.node.pb.CoinInfo + 54, // 139: quilibrium.node.node.pb.MintCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 29, // 140: quilibrium.node.node.pb.MutualReceiveCoinResponse.coin:type_name -> quilibrium.node.node.pb.CoinRef + 54, // 141: quilibrium.node.node.pb.MutualReceiveCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 54, // 142: quilibrium.node.node.pb.MutualTransferCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 54, // 143: quilibrium.node.node.pb.RevokeCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 29, // 144: quilibrium.node.node.pb.SplitCoinResponse.coins:type_name -> quilibrium.node.node.pb.CoinRef + 54, // 145: quilibrium.node.node.pb.SplitCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 30, // 146: quilibrium.node.node.pb.TransferCoinResponse.pending_transaction:type_name -> quilibrium.node.node.pb.PendingTransactionRef + 54, // 147: quilibrium.node.node.pb.TransferCoinResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 29, // 148: quilibrium.node.node.pb.ApprovePendingTransactionResponse.coin:type_name -> quilibrium.node.node.pb.CoinRef + 54, // 149: quilibrium.node.node.pb.ApprovePendingTransactionResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 54, // 150: quilibrium.node.node.pb.RejectPendingTransactionResponse.deliveries:type_name -> quilibrium.node.node.pb.DeliveryData + 19, // 151: quilibrium.node.node.pb.ValidationService.PerformValidation:input_type -> quilibrium.node.node.pb.ValidationMessage + 20, // 152: quilibrium.node.node.pb.ValidationService.Sync:input_type -> quilibrium.node.node.pb.SyncRequest + 0, // 153: quilibrium.node.node.pb.NodeService.GetFrames:input_type -> quilibrium.node.node.pb.GetFramesRequest + 1, // 154: quilibrium.node.node.pb.NodeService.GetFrameInfo:input_type -> quilibrium.node.node.pb.GetFrameInfoRequest + 2, // 155: quilibrium.node.node.pb.NodeService.GetPeerInfo:input_type -> quilibrium.node.node.pb.GetPeerInfoRequest + 3, // 156: quilibrium.node.node.pb.NodeService.GetNodeInfo:input_type -> quilibrium.node.node.pb.GetNodeInfoRequest + 4, // 157: quilibrium.node.node.pb.NodeService.GetNetworkInfo:input_type -> quilibrium.node.node.pb.GetNetworkInfoRequest + 15, // 158: quilibrium.node.node.pb.NodeService.GetTokenInfo:input_type -> quilibrium.node.node.pb.GetTokenInfoRequest + 22, // 159: quilibrium.node.node.pb.NodeService.GetPeerManifests:input_type -> quilibrium.node.node.pb.GetPeerManifestsRequest + 56, // 160: quilibrium.node.node.pb.AccountService.Allow:input_type -> quilibrium.node.node.pb.DecryptableAllowAccountRequest + 57, // 161: quilibrium.node.node.pb.AccountService.GetBalance:input_type -> quilibrium.node.node.pb.DecryptableBalanceAccountRequest + 58, // 162: quilibrium.node.node.pb.AccountService.ListCoins:input_type -> quilibrium.node.node.pb.DecryptableCoinsAccountRequest + 60, // 163: quilibrium.node.node.pb.AccountService.ListPendingTransactions:input_type -> quilibrium.node.node.pb.DecryptablePendingTransactionsAccountRequest + 59, // 164: quilibrium.node.node.pb.AccountService.Revoke:input_type -> quilibrium.node.node.pb.DecryptableRevokeAccountRequest + 61, // 165: quilibrium.node.node.pb.CoinService.Allow:input_type -> quilibrium.node.node.pb.DecryptableAllowCoinRequest + 62, // 166: quilibrium.node.node.pb.CoinService.Intersect:input_type -> quilibrium.node.node.pb.DecryptableIntersectCoinRequest + 63, // 167: quilibrium.node.node.pb.CoinService.Merge:input_type -> quilibrium.node.node.pb.DecryptableMergeCoinRequest + 64, // 168: quilibrium.node.node.pb.CoinService.Mint:input_type -> quilibrium.node.node.pb.DecryptableMintCoinRequest + 65, // 169: quilibrium.node.node.pb.CoinService.MutualReceive:input_type -> quilibrium.node.node.pb.DecryptableMutualReceiveCoinRequest + 66, // 170: quilibrium.node.node.pb.CoinService.MutualTransfer:input_type -> quilibrium.node.node.pb.DecryptableMutualTransferCoinRequest + 67, // 171: quilibrium.node.node.pb.CoinService.Revoke:input_type -> quilibrium.node.node.pb.DecryptableRevokeCoinRequest + 68, // 172: quilibrium.node.node.pb.CoinService.Split:input_type -> quilibrium.node.node.pb.DecryptableSplitCoinRequest + 69, // 173: quilibrium.node.node.pb.CoinService.Transfer:input_type -> quilibrium.node.node.pb.DecryptableTransferCoinRequest + 70, // 174: quilibrium.node.node.pb.TransactionService.Approve:input_type -> quilibrium.node.node.pb.DecryptableApprovePendingTransactionRequest + 71, // 175: quilibrium.node.node.pb.TransactionService.Reject:input_type -> quilibrium.node.node.pb.DecryptableRejectPendingTransactionRequest + 12, // 176: quilibrium.node.node.pb.NodeStats.PutNodeInfo:input_type -> quilibrium.node.node.pb.PutNodeInfoRequest + 11, // 177: quilibrium.node.node.pb.NodeStats.PutPeerInfo:input_type -> quilibrium.node.node.pb.PutPeerInfoRequest + 19, // 178: quilibrium.node.node.pb.ValidationService.PerformValidation:output_type -> quilibrium.node.node.pb.ValidationMessage + 21, // 179: quilibrium.node.node.pb.ValidationService.Sync:output_type -> quilibrium.node.node.pb.SyncResponse + 5, // 180: quilibrium.node.node.pb.NodeService.GetFrames:output_type -> quilibrium.node.node.pb.FramesResponse + 6, // 181: quilibrium.node.node.pb.NodeService.GetFrameInfo:output_type -> quilibrium.node.node.pb.FrameInfoResponse + 8, // 182: quilibrium.node.node.pb.NodeService.GetPeerInfo:output_type -> quilibrium.node.node.pb.PeerInfoResponse + 10, // 183: quilibrium.node.node.pb.NodeService.GetNodeInfo:output_type -> quilibrium.node.node.pb.NodeInfoResponse + 14, // 184: quilibrium.node.node.pb.NodeService.GetNetworkInfo:output_type -> quilibrium.node.node.pb.NetworkInfoResponse + 16, // 185: quilibrium.node.node.pb.NodeService.GetTokenInfo:output_type -> quilibrium.node.node.pb.TokenInfoResponse + 33, // 186: quilibrium.node.node.pb.NodeService.GetPeerManifests:output_type -> quilibrium.node.node.pb.PeerManifestsResponse + 74, // 187: quilibrium.node.node.pb.AccountService.Allow:output_type -> quilibrium.node.node.pb.AllowAccountResponse + 75, // 188: quilibrium.node.node.pb.AccountService.GetBalance:output_type -> quilibrium.node.node.pb.BalanceAccountResponse + 76, // 189: quilibrium.node.node.pb.AccountService.ListCoins:output_type -> quilibrium.node.node.pb.CoinsAccountResponse + 77, // 190: quilibrium.node.node.pb.AccountService.ListPendingTransactions:output_type -> quilibrium.node.node.pb.PendingTransactionsAccountResponse + 78, // 191: quilibrium.node.node.pb.AccountService.Revoke:output_type -> quilibrium.node.node.pb.RevokeAccountResponse + 79, // 192: quilibrium.node.node.pb.CoinService.Allow:output_type -> quilibrium.node.node.pb.AllowCoinResponse + 80, // 193: quilibrium.node.node.pb.CoinService.Intersect:output_type -> quilibrium.node.node.pb.IntersectCoinResponse + 81, // 194: quilibrium.node.node.pb.CoinService.Merge:output_type -> quilibrium.node.node.pb.MergeCoinResponse + 82, // 195: quilibrium.node.node.pb.CoinService.Mint:output_type -> quilibrium.node.node.pb.MintCoinResponse + 83, // 196: quilibrium.node.node.pb.CoinService.MutualReceive:output_type -> quilibrium.node.node.pb.MutualReceiveCoinResponse + 84, // 197: quilibrium.node.node.pb.CoinService.MutualTransfer:output_type -> quilibrium.node.node.pb.MutualTransferCoinResponse + 85, // 198: quilibrium.node.node.pb.CoinService.Revoke:output_type -> quilibrium.node.node.pb.RevokeCoinResponse + 86, // 199: quilibrium.node.node.pb.CoinService.Split:output_type -> quilibrium.node.node.pb.SplitCoinResponse + 87, // 200: quilibrium.node.node.pb.CoinService.Transfer:output_type -> quilibrium.node.node.pb.TransferCoinResponse + 88, // 201: quilibrium.node.node.pb.TransactionService.Approve:output_type -> quilibrium.node.node.pb.ApprovePendingTransactionResponse + 89, // 202: quilibrium.node.node.pb.TransactionService.Reject:output_type -> quilibrium.node.node.pb.RejectPendingTransactionResponse + 13, // 203: quilibrium.node.node.pb.NodeStats.PutNodeInfo:output_type -> quilibrium.node.node.pb.PutResponse + 13, // 204: quilibrium.node.node.pb.NodeStats.PutPeerInfo:output_type -> quilibrium.node.node.pb.PutResponse + 178, // [178:205] is the sub-list for method output_type + 151, // [151:178] is the sub-list for method input_type + 151, // [151:151] is the sub-list for extension type_name + 151, // [151:151] is the sub-list for extension extendee + 0, // [0:151] is the sub-list for field type_name } func init() { file_node_proto_init() } @@ -2402,6 +7474,114 @@ func file_node_proto_init() { } } file_node_proto_msgTypes[24].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[25].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[26].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[27].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[28].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[29].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[30].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[31].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[32].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[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PeerManifestsResponse); i { case 0: return &v.state @@ -2413,6 +7593,682 @@ func file_node_proto_init() { return nil } } + file_node_proto_msgTypes[34].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[35].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[36].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[37].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[38].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[39].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[40].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[41].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[42].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[43].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[44].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[45].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[46].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[47].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[48].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[49].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[50].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[51].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[52].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[53].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[54].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[55].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[56].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[57].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[58].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[59].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[60].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[61].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[62].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[63].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[64].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[65].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[66].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[67].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[68].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[69].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[70].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[71].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[72].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[73].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[74].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[75].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[76].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[77].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[78].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[79].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[80].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[81].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[82].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[83].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[84].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[85].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[86].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[87].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[88].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[89].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[26].OneofWrappers = []interface{}{ + (*AccountRef_OriginatedAccount)(nil), + (*AccountRef_ImplicitAccount)(nil), } type x struct{} out := protoimpl.TypeBuilder{ @@ -2420,9 +8276,9 @@ func file_node_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_node_proto_rawDesc, NumEnums: 0, - NumMessages: 25, + NumMessages: 90, NumExtensions: 0, - NumServices: 3, + NumServices: 6, }, GoTypes: file_node_proto_goTypes, DependencyIndexes: file_node_proto_depIdxs, diff --git a/node/protobufs/node.pb.gw.go b/node/protobufs/node.pb.gw.go index e393378..1c7dbda 100644 --- a/node/protobufs/node.pb.gw.go +++ b/node/protobufs/node.pb.gw.go @@ -328,6 +328,532 @@ func local_request_NodeService_GetPeerManifests_0(ctx context.Context, marshaler } +func request_AccountService_Allow_0(ctx context.Context, marshaler runtime.Marshaler, client AccountServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableAllowAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Allow(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AccountService_Allow_0(ctx context.Context, marshaler runtime.Marshaler, server AccountServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableAllowAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Allow(ctx, &protoReq) + return msg, metadata, err + +} + +func request_AccountService_GetBalance_0(ctx context.Context, marshaler runtime.Marshaler, client AccountServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableBalanceAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.GetBalance(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AccountService_GetBalance_0(ctx context.Context, marshaler runtime.Marshaler, server AccountServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableBalanceAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.GetBalance(ctx, &protoReq) + return msg, metadata, err + +} + +func request_AccountService_ListCoins_0(ctx context.Context, marshaler runtime.Marshaler, client AccountServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableCoinsAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.ListCoins(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AccountService_ListCoins_0(ctx context.Context, marshaler runtime.Marshaler, server AccountServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableCoinsAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.ListCoins(ctx, &protoReq) + return msg, metadata, err + +} + +func request_AccountService_ListPendingTransactions_0(ctx context.Context, marshaler runtime.Marshaler, client AccountServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptablePendingTransactionsAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.ListPendingTransactions(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AccountService_ListPendingTransactions_0(ctx context.Context, marshaler runtime.Marshaler, server AccountServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptablePendingTransactionsAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.ListPendingTransactions(ctx, &protoReq) + return msg, metadata, err + +} + +func request_AccountService_Revoke_0(ctx context.Context, marshaler runtime.Marshaler, client AccountServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableRevokeAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Revoke(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_AccountService_Revoke_0(ctx context.Context, marshaler runtime.Marshaler, server AccountServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableRevokeAccountRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Revoke(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CoinService_Allow_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableAllowCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Allow(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CoinService_Allow_0(ctx context.Context, marshaler runtime.Marshaler, server CoinServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableAllowCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Allow(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CoinService_Intersect_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableIntersectCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Intersect(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CoinService_Intersect_0(ctx context.Context, marshaler runtime.Marshaler, server CoinServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableIntersectCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Intersect(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CoinService_Merge_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableMergeCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Merge(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CoinService_Merge_0(ctx context.Context, marshaler runtime.Marshaler, server CoinServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableMergeCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Merge(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CoinService_Mint_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableMintCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Mint(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CoinService_Mint_0(ctx context.Context, marshaler runtime.Marshaler, server CoinServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableMintCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Mint(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CoinService_MutualReceive_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (CoinService_MutualReceiveClient, runtime.ServerMetadata, error) { + var protoReq DecryptableMutualReceiveCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.MutualReceive(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +func request_CoinService_MutualTransfer_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (CoinService_MutualTransferClient, runtime.ServerMetadata, error) { + var protoReq DecryptableMutualTransferCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.MutualTransfer(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + +func request_CoinService_Revoke_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableRevokeCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Revoke(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CoinService_Revoke_0(ctx context.Context, marshaler runtime.Marshaler, server CoinServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableRevokeCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Revoke(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CoinService_Split_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableSplitCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Split(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CoinService_Split_0(ctx context.Context, marshaler runtime.Marshaler, server CoinServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableSplitCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Split(ctx, &protoReq) + return msg, metadata, err + +} + +func request_CoinService_Transfer_0(ctx context.Context, marshaler runtime.Marshaler, client CoinServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableTransferCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Transfer(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_CoinService_Transfer_0(ctx context.Context, marshaler runtime.Marshaler, server CoinServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableTransferCoinRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Transfer(ctx, &protoReq) + return msg, metadata, err + +} + +func request_TransactionService_Approve_0(ctx context.Context, marshaler runtime.Marshaler, client TransactionServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableApprovePendingTransactionRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Approve(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_TransactionService_Approve_0(ctx context.Context, marshaler runtime.Marshaler, server TransactionServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableApprovePendingTransactionRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Approve(ctx, &protoReq) + return msg, metadata, err + +} + +func request_TransactionService_Reject_0(ctx context.Context, marshaler runtime.Marshaler, client TransactionServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableRejectPendingTransactionRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.Reject(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_TransactionService_Reject_0(ctx context.Context, marshaler runtime.Marshaler, server TransactionServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DecryptableRejectPendingTransactionRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.Reject(ctx, &protoReq) + return msg, metadata, err + +} + func request_NodeStats_PutNodeInfo_0(ctx context.Context, marshaler runtime.Marshaler, client NodeStatsClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq PutNodeInfoRequest var metadata runtime.ServerMetadata @@ -621,6 +1147,397 @@ func RegisterNodeServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux return nil } +// RegisterAccountServiceHandlerServer registers the http handlers for service AccountService to "mux". +// UnaryRPC :call AccountServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterAccountServiceHandlerFromEndpoint instead. +func RegisterAccountServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server AccountServiceServer) error { + + mux.Handle("POST", pattern_AccountService_Allow_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/Allow", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/Allow")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AccountService_Allow_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_Allow_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_GetBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/GetBalance", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/GetBalance")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AccountService_GetBalance_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_GetBalance_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_ListCoins_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/ListCoins", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/ListCoins")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AccountService_ListCoins_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_ListCoins_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_ListPendingTransactions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/ListPendingTransactions", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/ListPendingTransactions")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AccountService_ListPendingTransactions_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_ListPendingTransactions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_Revoke_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/Revoke", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/Revoke")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_AccountService_Revoke_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_Revoke_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterCoinServiceHandlerServer registers the http handlers for service CoinService to "mux". +// UnaryRPC :call CoinServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterCoinServiceHandlerFromEndpoint instead. +func RegisterCoinServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CoinServiceServer) error { + + mux.Handle("POST", pattern_CoinService_Allow_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Allow", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Allow")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CoinService_Allow_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Allow_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Intersect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Intersect", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Intersect")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CoinService_Intersect_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Intersect_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Merge_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Merge", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Merge")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CoinService_Merge_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Merge_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Mint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Mint", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Mint")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CoinService_Mint_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Mint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_MutualReceive_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + mux.Handle("POST", pattern_CoinService_MutualTransfer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + + mux.Handle("POST", pattern_CoinService_Revoke_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Revoke", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Revoke")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CoinService_Revoke_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Revoke_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Split_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Split", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Split")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CoinService_Split_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Split_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Transfer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Transfer", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Transfer")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_CoinService_Transfer_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Transfer_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterTransactionServiceHandlerServer registers the http handlers for service TransactionService to "mux". +// UnaryRPC :call TransactionServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterTransactionServiceHandlerFromEndpoint instead. +func RegisterTransactionServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server TransactionServiceServer) error { + + mux.Handle("POST", pattern_TransactionService_Approve_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.TransactionService/Approve", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.TransactionService/Approve")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_TransactionService_Approve_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_TransactionService_Approve_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_TransactionService_Reject_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/quilibrium.node.node.pb.TransactionService/Reject", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.TransactionService/Reject")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_TransactionService_Reject_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_TransactionService_Reject_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + // RegisterNodeStatsHandlerServer registers the http handlers for service NodeStats to "mux". // UnaryRPC :call NodeStatsServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -1004,6 +1921,557 @@ var ( forward_NodeService_GetPeerManifests_0 = runtime.ForwardResponseMessage ) +// RegisterAccountServiceHandlerFromEndpoint is same as RegisterAccountServiceHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterAccountServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.DialContext(ctx, endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterAccountServiceHandler(ctx, mux, conn) +} + +// RegisterAccountServiceHandler registers the http handlers for service AccountService to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterAccountServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterAccountServiceHandlerClient(ctx, mux, NewAccountServiceClient(conn)) +} + +// RegisterAccountServiceHandlerClient registers the http handlers for service AccountService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "AccountServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "AccountServiceClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "AccountServiceClient" to call the correct interceptors. +func RegisterAccountServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client AccountServiceClient) error { + + mux.Handle("POST", pattern_AccountService_Allow_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/Allow", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/Allow")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AccountService_Allow_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_Allow_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_GetBalance_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/GetBalance", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/GetBalance")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AccountService_GetBalance_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_GetBalance_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_ListCoins_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/ListCoins", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/ListCoins")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AccountService_ListCoins_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_ListCoins_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_ListPendingTransactions_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/ListPendingTransactions", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/ListPendingTransactions")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AccountService_ListPendingTransactions_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_ListPendingTransactions_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_AccountService_Revoke_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.AccountService/Revoke", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.AccountService/Revoke")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_AccountService_Revoke_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_AccountService_Revoke_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_AccountService_Allow_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.AccountService", "Allow"}, "")) + + pattern_AccountService_GetBalance_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.AccountService", "GetBalance"}, "")) + + pattern_AccountService_ListCoins_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.AccountService", "ListCoins"}, "")) + + pattern_AccountService_ListPendingTransactions_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.AccountService", "ListPendingTransactions"}, "")) + + pattern_AccountService_Revoke_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.AccountService", "Revoke"}, "")) +) + +var ( + forward_AccountService_Allow_0 = runtime.ForwardResponseMessage + + forward_AccountService_GetBalance_0 = runtime.ForwardResponseMessage + + forward_AccountService_ListCoins_0 = runtime.ForwardResponseMessage + + forward_AccountService_ListPendingTransactions_0 = runtime.ForwardResponseMessage + + forward_AccountService_Revoke_0 = runtime.ForwardResponseMessage +) + +// RegisterCoinServiceHandlerFromEndpoint is same as RegisterCoinServiceHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterCoinServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.DialContext(ctx, endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterCoinServiceHandler(ctx, mux, conn) +} + +// RegisterCoinServiceHandler registers the http handlers for service CoinService to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterCoinServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterCoinServiceHandlerClient(ctx, mux, NewCoinServiceClient(conn)) +} + +// RegisterCoinServiceHandlerClient registers the http handlers for service CoinService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CoinServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CoinServiceClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "CoinServiceClient" to call the correct interceptors. +func RegisterCoinServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CoinServiceClient) error { + + mux.Handle("POST", pattern_CoinService_Allow_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Allow", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Allow")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_Allow_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Allow_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Intersect_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Intersect", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Intersect")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_Intersect_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Intersect_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Merge_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Merge", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Merge")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_Merge_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Merge_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Mint_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Mint", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Mint")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_Mint_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Mint_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_MutualReceive_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/MutualReceive", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/MutualReceive")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_MutualReceive_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_MutualReceive_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_MutualTransfer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/MutualTransfer", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/MutualTransfer")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_MutualTransfer_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_MutualTransfer_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Revoke_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Revoke", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Revoke")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_Revoke_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Revoke_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Split_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Split", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Split")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_Split_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Split_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_CoinService_Transfer_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.CoinService/Transfer", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.CoinService/Transfer")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_CoinService_Transfer_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_CoinService_Transfer_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_CoinService_Allow_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "Allow"}, "")) + + pattern_CoinService_Intersect_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "Intersect"}, "")) + + pattern_CoinService_Merge_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "Merge"}, "")) + + pattern_CoinService_Mint_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "Mint"}, "")) + + pattern_CoinService_MutualReceive_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "MutualReceive"}, "")) + + pattern_CoinService_MutualTransfer_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "MutualTransfer"}, "")) + + pattern_CoinService_Revoke_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "Revoke"}, "")) + + pattern_CoinService_Split_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "Split"}, "")) + + pattern_CoinService_Transfer_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.CoinService", "Transfer"}, "")) +) + +var ( + forward_CoinService_Allow_0 = runtime.ForwardResponseMessage + + forward_CoinService_Intersect_0 = runtime.ForwardResponseMessage + + forward_CoinService_Merge_0 = runtime.ForwardResponseMessage + + forward_CoinService_Mint_0 = runtime.ForwardResponseMessage + + forward_CoinService_MutualReceive_0 = runtime.ForwardResponseStream + + forward_CoinService_MutualTransfer_0 = runtime.ForwardResponseStream + + forward_CoinService_Revoke_0 = runtime.ForwardResponseMessage + + forward_CoinService_Split_0 = runtime.ForwardResponseMessage + + forward_CoinService_Transfer_0 = runtime.ForwardResponseMessage +) + +// RegisterTransactionServiceHandlerFromEndpoint is same as RegisterTransactionServiceHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterTransactionServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.DialContext(ctx, endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterTransactionServiceHandler(ctx, mux, conn) +} + +// RegisterTransactionServiceHandler registers the http handlers for service TransactionService to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterTransactionServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterTransactionServiceHandlerClient(ctx, mux, NewTransactionServiceClient(conn)) +} + +// RegisterTransactionServiceHandlerClient registers the http handlers for service TransactionService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "TransactionServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "TransactionServiceClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "TransactionServiceClient" to call the correct interceptors. +func RegisterTransactionServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client TransactionServiceClient) error { + + mux.Handle("POST", pattern_TransactionService_Approve_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.TransactionService/Approve", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.TransactionService/Approve")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_TransactionService_Approve_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_TransactionService_Approve_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_TransactionService_Reject_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/quilibrium.node.node.pb.TransactionService/Reject", runtime.WithHTTPPathPattern("/quilibrium.node.node.pb.TransactionService/Reject")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_TransactionService_Reject_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_TransactionService_Reject_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_TransactionService_Approve_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.TransactionService", "Approve"}, "")) + + pattern_TransactionService_Reject_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"quilibrium.node.node.pb.TransactionService", "Reject"}, "")) +) + +var ( + forward_TransactionService_Approve_0 = runtime.ForwardResponseMessage + + forward_TransactionService_Reject_0 = runtime.ForwardResponseMessage +) + // RegisterNodeStatsHandlerFromEndpoint is same as RegisterNodeStatsHandler but // automatically dials to "endpoint" and closes the connection when "ctx" gets done. func RegisterNodeStatsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { diff --git a/node/protobufs/node.proto b/node/protobufs/node.proto index e8b7f91..aefdc33 100644 --- a/node/protobufs/node.proto +++ b/node/protobufs/node.proto @@ -228,10 +228,376 @@ message PeerManifest { uint32 increment = 18; } +message OriginatedAccountRef { + bytes address = 1; +} + +message ImplicitAccount { + uint32 implicit_type = 1; + bytes address = 2; + bytes domain = 3; +} + +message AccountRef { + oneof account { + OriginatedAccountRef originated_account = 1; + ImplicitAccount implicit_account = 2; + } +} + +message AccountAllowanceRef { + bytes address = 1; +} + +message CoinAllowanceRef { + bytes address = 1; +} + +message CoinRef { + bytes address = 1; +} + +message PendingTransactionRef { + bytes address = 1; +} + +message KeyRef { + bytes address = 1; +} + +message Signature { + uint32 signature_type = 1; + bytes signature = 2; + KeyRef key = 3; +} + message PeerManifestsResponse { repeated PeerManifest peer_manifests = 1; } +message AcceptPendingTransactionRequest { + PendingTransactionRef pending_transaction = 1; + Signature signature = 2; +} + +message AllowAccountRequest { + AccountRef of_account = 1; + AccountRef permitted_account = 2; + repeated string permitted_operations = 3; + AccountAllowanceRef allowance = 4; + Signature signature = 5; +} + +message AllowCoinRequest { + CoinRef of_coin = 1; + AccountRef permitted_account = 2; + repeated string permitted_operations = 3; + AccountAllowanceRef account_allowance = 4; + CoinAllowanceRef coin_allowance = 5; + Signature signature = 6; +} + +message BalanceAccountRequest { + AccountRef account = 1; + AccountAllowanceRef allowance = 2; + Signature signature = 3; +} + +message CoinsAccountRequest { + AccountRef account = 1; + AccountAllowanceRef allowance = 2; + Signature signature = 3; +} + +message PendingTransactionsAccountRequest { + AccountRef account = 1; + AccountAllowanceRef allowance = 2; + Signature signature = 3; +} + +message IntersectCoinRequest { + repeated bytes addresses = 1; + AccountAllowanceRef account_allowance = 2; + CoinAllowanceRef coin_allowance = 3; + CoinRef of_coin = 4; +} + +message MergeCoinRequest { + repeated CoinRef coins = 1; + AccountAllowanceRef account_allowance = 2; + repeated CoinAllowanceRef coin_allowances = 3; + Signature signature = 4; +} + +message MintCoinRequest { + repeated bytes proofs = 1; + AccountAllowanceRef allowance = 2; + Signature signature = 3; +} + +message MutualReceiveCoinRequest { + AccountRef to_account = 1; + AccountAllowanceRef allowance = 2; + Signature signature = 3; +} + +message MutualTransferCoinRequest { + bytes rendezvous = 1; + CoinRef of_coin = 2; + AccountAllowanceRef account_allowance = 3; + CoinAllowanceRef coin_allowance = 4; + Signature signature = 5; +} + +message RevokeAccountRequest { + AccountRef of_account = 1; + AccountAllowanceRef revoked_allowance = 2; + AccountAllowanceRef allowance = 3; + Signature signature = 4; +} + +message RevokeCoinRequest { + CoinRef of_coin = 1; + CoinAllowanceRef revoked_allowance = 2; + AccountAllowanceRef account_allowance = 3; + CoinAllowanceRef coin_allowance = 4; + Signature signature = 5; +} + +message SplitCoinRequest { + CoinRef of_coin = 1; + repeated bytes amounts = 2; + AccountAllowanceRef account_allowance = 3; + CoinAllowanceRef coin_allowance = 4; + Signature signature = 5; +} + +message TransferCoinRequest { + AccountRef to_account = 1; + AccountRef refund_account = 2; + CoinRef of_coin = 3; + int64 expiry = 4; + AccountAllowanceRef account_allowance = 5; + CoinAllowanceRef coin_allowance = 6; + Signature signature = 7; +} + +message ApprovePendingTransactionRequest { + PendingTransactionRef pending_transaction = 1; + AccountAllowanceRef account_allowance = 2; + Signature signature = 3; +} + +message RejectPendingTransactionRequest { + PendingTransactionRef pending_transaction = 1; + AccountAllowanceRef account_allowance = 2; + Signature signature = 3; +} + +message InlineKey { + bytes ref = 1; + bytes key = 2; +} + +message KeyRing { + repeated InlineKey keys = 1; +} + +message Confirmation { + bytes message_id = 1; + bytes proof = 2; +} + +message DeliveryData { + InlineKey shared_key = 1; + Confirmation confirmation = 2; +} + +message DeliveryMethod { + uint32 delivery_type = 1; + bytes address = 2; +} + +message DecryptableAllowAccountRequest { + AllowAccountRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableBalanceAccountRequest { + BalanceAccountRequest request = 1; + KeyRing key_ring = 2; +} + +message DecryptableCoinsAccountRequest { + CoinsAccountRequest request = 1; + KeyRing key_ring = 2; +} + +message DecryptableRevokeAccountRequest { + RevokeAccountRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptablePendingTransactionsAccountRequest { + PendingTransactionsAccountRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableAllowCoinRequest { + AllowCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableIntersectCoinRequest { + IntersectCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableMergeCoinRequest { + MergeCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableMintCoinRequest { + MintCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableMutualReceiveCoinRequest { + MutualReceiveCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableMutualTransferCoinRequest { + MutualTransferCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableRevokeCoinRequest { + RevokeCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableSplitCoinRequest { + SplitCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableTransferCoinRequest { + TransferCoinRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableApprovePendingTransactionRequest { + ApprovePendingTransactionRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message DecryptableRejectPendingTransactionRequest { + RejectPendingTransactionRequest request = 1; + KeyRing key_ring = 2; + DeliveryMethod delivery_method = 3; +} + +message CoinInfo { + CoinRef coin = 1; + bytes balance = 2; +} + +message PendingTransactionInfo { + PendingTransactionRef pending_transaction = 1; + CoinInfo coin = 2; + AccountRef refund_account = 3; +} + +message AllowAccountResponse { + AccountAllowanceRef allowance = 1; + repeated DeliveryData deliveries = 2; +} + +message BalanceAccountResponse { + bytes balance = 1; +} + +message CoinsAccountResponse { + repeated CoinInfo coins = 1; +} + +message PendingTransactionsAccountResponse { + repeated PendingTransactionInfo pending_transactions = 1; +} + +message RevokeAccountResponse { + repeated DeliveryData deliveries = 1; +} + +message AllowCoinResponse { + CoinAllowanceRef allowance = 1; + repeated DeliveryData deliveries = 2; +} + +message IntersectCoinResponse { + bool intersects = 1; +} + +message MergeCoinResponse { + CoinRef coin = 1; + repeated DeliveryData deliveries = 2; +} + +message MintCoinResponse { + repeated CoinInfo coins = 1; + repeated DeliveryData deliveries = 2; +} + +message MutualReceiveCoinResponse { + uint32 status = 1; + bytes rendezvous = 2; + CoinRef coin = 3; + repeated DeliveryData deliveries = 4; +} + +message MutualTransferCoinResponse { + uint32 status = 1; + repeated DeliveryData deliveries = 2; +} + +message RevokeCoinResponse { + repeated DeliveryData deliveries = 1; +} + +message SplitCoinResponse { + repeated CoinRef coins = 1; + repeated DeliveryData deliveries = 2; +} + +message TransferCoinResponse { + PendingTransactionRef pending_transaction = 1; + repeated DeliveryData deliveries = 2; +} + +message ApprovePendingTransactionResponse { + CoinRef coin = 1; + repeated DeliveryData deliveries = 2; +} + +message RejectPendingTransactionResponse { + repeated DeliveryData deliveries = 2; +} + service NodeService { rpc GetFrames(GetFramesRequest) returns (FramesResponse); rpc GetFrameInfo(GetFrameInfoRequest) returns (FrameInfoResponse); @@ -242,6 +608,31 @@ service NodeService { rpc GetPeerManifests(GetPeerManifestsRequest) returns (PeerManifestsResponse); } +service AccountService { + rpc Allow(DecryptableAllowAccountRequest) returns (AllowAccountResponse); + rpc GetBalance(DecryptableBalanceAccountRequest) returns (BalanceAccountResponse); + rpc ListCoins(DecryptableCoinsAccountRequest) returns (CoinsAccountResponse); + rpc ListPendingTransactions(DecryptablePendingTransactionsAccountRequest) returns (PendingTransactionsAccountResponse); + rpc Revoke(DecryptableRevokeAccountRequest) returns (RevokeAccountResponse); +} + +service CoinService { + rpc Allow(DecryptableAllowCoinRequest) returns (AllowCoinResponse); + rpc Intersect(DecryptableIntersectCoinRequest) returns (IntersectCoinResponse); + rpc Merge(DecryptableMergeCoinRequest) returns (MergeCoinResponse); + rpc Mint(DecryptableMintCoinRequest) returns (MintCoinResponse); + rpc MutualReceive(DecryptableMutualReceiveCoinRequest) returns (stream MutualReceiveCoinResponse); + rpc MutualTransfer(DecryptableMutualTransferCoinRequest) returns (stream MutualTransferCoinResponse); + rpc Revoke(DecryptableRevokeCoinRequest) returns (RevokeCoinResponse); + rpc Split(DecryptableSplitCoinRequest) returns (SplitCoinResponse); + rpc Transfer(DecryptableTransferCoinRequest) returns (TransferCoinResponse); +} + +service TransactionService { + rpc Approve(DecryptableApprovePendingTransactionRequest) returns (ApprovePendingTransactionResponse); + rpc Reject(DecryptableRejectPendingTransactionRequest) returns (RejectPendingTransactionResponse); +} + service NodeStats { rpc PutNodeInfo(PutNodeInfoRequest) returns (PutResponse); rpc PutPeerInfo(PutPeerInfoRequest) returns (PutResponse); diff --git a/node/protobufs/node_grpc.pb.go b/node/protobufs/node_grpc.pb.go index 10f8663..2024285 100644 --- a/node/protobufs/node_grpc.pb.go +++ b/node/protobufs/node_grpc.pb.go @@ -485,6 +485,812 @@ var NodeService_ServiceDesc = grpc.ServiceDesc{ Metadata: "node.proto", } +const ( + AccountService_Allow_FullMethodName = "/quilibrium.node.node.pb.AccountService/Allow" + AccountService_GetBalance_FullMethodName = "/quilibrium.node.node.pb.AccountService/GetBalance" + AccountService_ListCoins_FullMethodName = "/quilibrium.node.node.pb.AccountService/ListCoins" + AccountService_ListPendingTransactions_FullMethodName = "/quilibrium.node.node.pb.AccountService/ListPendingTransactions" + AccountService_Revoke_FullMethodName = "/quilibrium.node.node.pb.AccountService/Revoke" +) + +// AccountServiceClient is the client API for AccountService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type AccountServiceClient interface { + Allow(ctx context.Context, in *DecryptableAllowAccountRequest, opts ...grpc.CallOption) (*AllowAccountResponse, error) + GetBalance(ctx context.Context, in *DecryptableBalanceAccountRequest, opts ...grpc.CallOption) (*BalanceAccountResponse, error) + ListCoins(ctx context.Context, in *DecryptableCoinsAccountRequest, opts ...grpc.CallOption) (*CoinsAccountResponse, error) + ListPendingTransactions(ctx context.Context, in *DecryptablePendingTransactionsAccountRequest, opts ...grpc.CallOption) (*PendingTransactionsAccountResponse, error) + Revoke(ctx context.Context, in *DecryptableRevokeAccountRequest, opts ...grpc.CallOption) (*RevokeAccountResponse, error) +} + +type accountServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewAccountServiceClient(cc grpc.ClientConnInterface) AccountServiceClient { + return &accountServiceClient{cc} +} + +func (c *accountServiceClient) Allow(ctx context.Context, in *DecryptableAllowAccountRequest, opts ...grpc.CallOption) (*AllowAccountResponse, error) { + out := new(AllowAccountResponse) + err := c.cc.Invoke(ctx, AccountService_Allow_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *accountServiceClient) GetBalance(ctx context.Context, in *DecryptableBalanceAccountRequest, opts ...grpc.CallOption) (*BalanceAccountResponse, error) { + out := new(BalanceAccountResponse) + err := c.cc.Invoke(ctx, AccountService_GetBalance_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *accountServiceClient) ListCoins(ctx context.Context, in *DecryptableCoinsAccountRequest, opts ...grpc.CallOption) (*CoinsAccountResponse, error) { + out := new(CoinsAccountResponse) + err := c.cc.Invoke(ctx, AccountService_ListCoins_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *accountServiceClient) ListPendingTransactions(ctx context.Context, in *DecryptablePendingTransactionsAccountRequest, opts ...grpc.CallOption) (*PendingTransactionsAccountResponse, error) { + out := new(PendingTransactionsAccountResponse) + err := c.cc.Invoke(ctx, AccountService_ListPendingTransactions_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *accountServiceClient) Revoke(ctx context.Context, in *DecryptableRevokeAccountRequest, opts ...grpc.CallOption) (*RevokeAccountResponse, error) { + out := new(RevokeAccountResponse) + err := c.cc.Invoke(ctx, AccountService_Revoke_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// AccountServiceServer is the server API for AccountService service. +// All implementations must embed UnimplementedAccountServiceServer +// for forward compatibility +type AccountServiceServer interface { + Allow(context.Context, *DecryptableAllowAccountRequest) (*AllowAccountResponse, error) + GetBalance(context.Context, *DecryptableBalanceAccountRequest) (*BalanceAccountResponse, error) + ListCoins(context.Context, *DecryptableCoinsAccountRequest) (*CoinsAccountResponse, error) + ListPendingTransactions(context.Context, *DecryptablePendingTransactionsAccountRequest) (*PendingTransactionsAccountResponse, error) + Revoke(context.Context, *DecryptableRevokeAccountRequest) (*RevokeAccountResponse, error) + mustEmbedUnimplementedAccountServiceServer() +} + +// UnimplementedAccountServiceServer must be embedded to have forward compatible implementations. +type UnimplementedAccountServiceServer struct { +} + +func (UnimplementedAccountServiceServer) Allow(context.Context, *DecryptableAllowAccountRequest) (*AllowAccountResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Allow not implemented") +} +func (UnimplementedAccountServiceServer) GetBalance(context.Context, *DecryptableBalanceAccountRequest) (*BalanceAccountResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetBalance not implemented") +} +func (UnimplementedAccountServiceServer) ListCoins(context.Context, *DecryptableCoinsAccountRequest) (*CoinsAccountResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListCoins not implemented") +} +func (UnimplementedAccountServiceServer) ListPendingTransactions(context.Context, *DecryptablePendingTransactionsAccountRequest) (*PendingTransactionsAccountResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListPendingTransactions not implemented") +} +func (UnimplementedAccountServiceServer) Revoke(context.Context, *DecryptableRevokeAccountRequest) (*RevokeAccountResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Revoke not implemented") +} +func (UnimplementedAccountServiceServer) mustEmbedUnimplementedAccountServiceServer() {} + +// UnsafeAccountServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to AccountServiceServer will +// result in compilation errors. +type UnsafeAccountServiceServer interface { + mustEmbedUnimplementedAccountServiceServer() +} + +func RegisterAccountServiceServer(s grpc.ServiceRegistrar, srv AccountServiceServer) { + s.RegisterService(&AccountService_ServiceDesc, srv) +} + +func _AccountService_Allow_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableAllowAccountRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AccountServiceServer).Allow(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AccountService_Allow_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AccountServiceServer).Allow(ctx, req.(*DecryptableAllowAccountRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _AccountService_GetBalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableBalanceAccountRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AccountServiceServer).GetBalance(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AccountService_GetBalance_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AccountServiceServer).GetBalance(ctx, req.(*DecryptableBalanceAccountRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _AccountService_ListCoins_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableCoinsAccountRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AccountServiceServer).ListCoins(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AccountService_ListCoins_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AccountServiceServer).ListCoins(ctx, req.(*DecryptableCoinsAccountRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _AccountService_ListPendingTransactions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptablePendingTransactionsAccountRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AccountServiceServer).ListPendingTransactions(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AccountService_ListPendingTransactions_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AccountServiceServer).ListPendingTransactions(ctx, req.(*DecryptablePendingTransactionsAccountRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _AccountService_Revoke_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableRevokeAccountRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AccountServiceServer).Revoke(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: AccountService_Revoke_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AccountServiceServer).Revoke(ctx, req.(*DecryptableRevokeAccountRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// AccountService_ServiceDesc is the grpc.ServiceDesc for AccountService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var AccountService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "quilibrium.node.node.pb.AccountService", + HandlerType: (*AccountServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Allow", + Handler: _AccountService_Allow_Handler, + }, + { + MethodName: "GetBalance", + Handler: _AccountService_GetBalance_Handler, + }, + { + MethodName: "ListCoins", + Handler: _AccountService_ListCoins_Handler, + }, + { + MethodName: "ListPendingTransactions", + Handler: _AccountService_ListPendingTransactions_Handler, + }, + { + MethodName: "Revoke", + Handler: _AccountService_Revoke_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "node.proto", +} + +const ( + CoinService_Allow_FullMethodName = "/quilibrium.node.node.pb.CoinService/Allow" + CoinService_Intersect_FullMethodName = "/quilibrium.node.node.pb.CoinService/Intersect" + CoinService_Merge_FullMethodName = "/quilibrium.node.node.pb.CoinService/Merge" + CoinService_Mint_FullMethodName = "/quilibrium.node.node.pb.CoinService/Mint" + CoinService_MutualReceive_FullMethodName = "/quilibrium.node.node.pb.CoinService/MutualReceive" + CoinService_MutualTransfer_FullMethodName = "/quilibrium.node.node.pb.CoinService/MutualTransfer" + CoinService_Revoke_FullMethodName = "/quilibrium.node.node.pb.CoinService/Revoke" + CoinService_Split_FullMethodName = "/quilibrium.node.node.pb.CoinService/Split" + CoinService_Transfer_FullMethodName = "/quilibrium.node.node.pb.CoinService/Transfer" +) + +// CoinServiceClient is the client API for CoinService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type CoinServiceClient interface { + Allow(ctx context.Context, in *DecryptableAllowCoinRequest, opts ...grpc.CallOption) (*AllowCoinResponse, error) + Intersect(ctx context.Context, in *DecryptableIntersectCoinRequest, opts ...grpc.CallOption) (*IntersectCoinResponse, error) + Merge(ctx context.Context, in *DecryptableMergeCoinRequest, opts ...grpc.CallOption) (*MergeCoinResponse, error) + Mint(ctx context.Context, in *DecryptableMintCoinRequest, opts ...grpc.CallOption) (*MintCoinResponse, error) + MutualReceive(ctx context.Context, in *DecryptableMutualReceiveCoinRequest, opts ...grpc.CallOption) (CoinService_MutualReceiveClient, error) + MutualTransfer(ctx context.Context, in *DecryptableMutualTransferCoinRequest, opts ...grpc.CallOption) (CoinService_MutualTransferClient, error) + Revoke(ctx context.Context, in *DecryptableRevokeCoinRequest, opts ...grpc.CallOption) (*RevokeCoinResponse, error) + Split(ctx context.Context, in *DecryptableSplitCoinRequest, opts ...grpc.CallOption) (*SplitCoinResponse, error) + Transfer(ctx context.Context, in *DecryptableTransferCoinRequest, opts ...grpc.CallOption) (*TransferCoinResponse, error) +} + +type coinServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewCoinServiceClient(cc grpc.ClientConnInterface) CoinServiceClient { + return &coinServiceClient{cc} +} + +func (c *coinServiceClient) Allow(ctx context.Context, in *DecryptableAllowCoinRequest, opts ...grpc.CallOption) (*AllowCoinResponse, error) { + out := new(AllowCoinResponse) + err := c.cc.Invoke(ctx, CoinService_Allow_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *coinServiceClient) Intersect(ctx context.Context, in *DecryptableIntersectCoinRequest, opts ...grpc.CallOption) (*IntersectCoinResponse, error) { + out := new(IntersectCoinResponse) + err := c.cc.Invoke(ctx, CoinService_Intersect_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *coinServiceClient) Merge(ctx context.Context, in *DecryptableMergeCoinRequest, opts ...grpc.CallOption) (*MergeCoinResponse, error) { + out := new(MergeCoinResponse) + err := c.cc.Invoke(ctx, CoinService_Merge_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *coinServiceClient) Mint(ctx context.Context, in *DecryptableMintCoinRequest, opts ...grpc.CallOption) (*MintCoinResponse, error) { + out := new(MintCoinResponse) + err := c.cc.Invoke(ctx, CoinService_Mint_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *coinServiceClient) MutualReceive(ctx context.Context, in *DecryptableMutualReceiveCoinRequest, opts ...grpc.CallOption) (CoinService_MutualReceiveClient, error) { + stream, err := c.cc.NewStream(ctx, &CoinService_ServiceDesc.Streams[0], CoinService_MutualReceive_FullMethodName, opts...) + if err != nil { + return nil, err + } + x := &coinServiceMutualReceiveClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type CoinService_MutualReceiveClient interface { + Recv() (*MutualReceiveCoinResponse, error) + grpc.ClientStream +} + +type coinServiceMutualReceiveClient struct { + grpc.ClientStream +} + +func (x *coinServiceMutualReceiveClient) Recv() (*MutualReceiveCoinResponse, error) { + m := new(MutualReceiveCoinResponse) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *coinServiceClient) MutualTransfer(ctx context.Context, in *DecryptableMutualTransferCoinRequest, opts ...grpc.CallOption) (CoinService_MutualTransferClient, error) { + stream, err := c.cc.NewStream(ctx, &CoinService_ServiceDesc.Streams[1], CoinService_MutualTransfer_FullMethodName, opts...) + if err != nil { + return nil, err + } + x := &coinServiceMutualTransferClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type CoinService_MutualTransferClient interface { + Recv() (*MutualTransferCoinResponse, error) + grpc.ClientStream +} + +type coinServiceMutualTransferClient struct { + grpc.ClientStream +} + +func (x *coinServiceMutualTransferClient) Recv() (*MutualTransferCoinResponse, error) { + m := new(MutualTransferCoinResponse) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +func (c *coinServiceClient) Revoke(ctx context.Context, in *DecryptableRevokeCoinRequest, opts ...grpc.CallOption) (*RevokeCoinResponse, error) { + out := new(RevokeCoinResponse) + err := c.cc.Invoke(ctx, CoinService_Revoke_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *coinServiceClient) Split(ctx context.Context, in *DecryptableSplitCoinRequest, opts ...grpc.CallOption) (*SplitCoinResponse, error) { + out := new(SplitCoinResponse) + err := c.cc.Invoke(ctx, CoinService_Split_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *coinServiceClient) Transfer(ctx context.Context, in *DecryptableTransferCoinRequest, opts ...grpc.CallOption) (*TransferCoinResponse, error) { + out := new(TransferCoinResponse) + err := c.cc.Invoke(ctx, CoinService_Transfer_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CoinServiceServer is the server API for CoinService service. +// All implementations must embed UnimplementedCoinServiceServer +// for forward compatibility +type CoinServiceServer interface { + Allow(context.Context, *DecryptableAllowCoinRequest) (*AllowCoinResponse, error) + Intersect(context.Context, *DecryptableIntersectCoinRequest) (*IntersectCoinResponse, error) + Merge(context.Context, *DecryptableMergeCoinRequest) (*MergeCoinResponse, error) + Mint(context.Context, *DecryptableMintCoinRequest) (*MintCoinResponse, error) + MutualReceive(*DecryptableMutualReceiveCoinRequest, CoinService_MutualReceiveServer) error + MutualTransfer(*DecryptableMutualTransferCoinRequest, CoinService_MutualTransferServer) error + Revoke(context.Context, *DecryptableRevokeCoinRequest) (*RevokeCoinResponse, error) + Split(context.Context, *DecryptableSplitCoinRequest) (*SplitCoinResponse, error) + Transfer(context.Context, *DecryptableTransferCoinRequest) (*TransferCoinResponse, error) + mustEmbedUnimplementedCoinServiceServer() +} + +// UnimplementedCoinServiceServer must be embedded to have forward compatible implementations. +type UnimplementedCoinServiceServer struct { +} + +func (UnimplementedCoinServiceServer) Allow(context.Context, *DecryptableAllowCoinRequest) (*AllowCoinResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Allow not implemented") +} +func (UnimplementedCoinServiceServer) Intersect(context.Context, *DecryptableIntersectCoinRequest) (*IntersectCoinResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Intersect not implemented") +} +func (UnimplementedCoinServiceServer) Merge(context.Context, *DecryptableMergeCoinRequest) (*MergeCoinResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Merge not implemented") +} +func (UnimplementedCoinServiceServer) Mint(context.Context, *DecryptableMintCoinRequest) (*MintCoinResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Mint not implemented") +} +func (UnimplementedCoinServiceServer) MutualReceive(*DecryptableMutualReceiveCoinRequest, CoinService_MutualReceiveServer) error { + return status.Errorf(codes.Unimplemented, "method MutualReceive not implemented") +} +func (UnimplementedCoinServiceServer) MutualTransfer(*DecryptableMutualTransferCoinRequest, CoinService_MutualTransferServer) error { + return status.Errorf(codes.Unimplemented, "method MutualTransfer not implemented") +} +func (UnimplementedCoinServiceServer) Revoke(context.Context, *DecryptableRevokeCoinRequest) (*RevokeCoinResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Revoke not implemented") +} +func (UnimplementedCoinServiceServer) Split(context.Context, *DecryptableSplitCoinRequest) (*SplitCoinResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Split not implemented") +} +func (UnimplementedCoinServiceServer) Transfer(context.Context, *DecryptableTransferCoinRequest) (*TransferCoinResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Transfer not implemented") +} +func (UnimplementedCoinServiceServer) mustEmbedUnimplementedCoinServiceServer() {} + +// UnsafeCoinServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to CoinServiceServer will +// result in compilation errors. +type UnsafeCoinServiceServer interface { + mustEmbedUnimplementedCoinServiceServer() +} + +func RegisterCoinServiceServer(s grpc.ServiceRegistrar, srv CoinServiceServer) { + s.RegisterService(&CoinService_ServiceDesc, srv) +} + +func _CoinService_Allow_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableAllowCoinRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CoinServiceServer).Allow(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CoinService_Allow_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CoinServiceServer).Allow(ctx, req.(*DecryptableAllowCoinRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CoinService_Intersect_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableIntersectCoinRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CoinServiceServer).Intersect(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CoinService_Intersect_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CoinServiceServer).Intersect(ctx, req.(*DecryptableIntersectCoinRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CoinService_Merge_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableMergeCoinRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CoinServiceServer).Merge(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CoinService_Merge_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CoinServiceServer).Merge(ctx, req.(*DecryptableMergeCoinRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CoinService_Mint_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableMintCoinRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CoinServiceServer).Mint(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CoinService_Mint_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CoinServiceServer).Mint(ctx, req.(*DecryptableMintCoinRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CoinService_MutualReceive_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(DecryptableMutualReceiveCoinRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(CoinServiceServer).MutualReceive(m, &coinServiceMutualReceiveServer{stream}) +} + +type CoinService_MutualReceiveServer interface { + Send(*MutualReceiveCoinResponse) error + grpc.ServerStream +} + +type coinServiceMutualReceiveServer struct { + grpc.ServerStream +} + +func (x *coinServiceMutualReceiveServer) Send(m *MutualReceiveCoinResponse) error { + return x.ServerStream.SendMsg(m) +} + +func _CoinService_MutualTransfer_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(DecryptableMutualTransferCoinRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(CoinServiceServer).MutualTransfer(m, &coinServiceMutualTransferServer{stream}) +} + +type CoinService_MutualTransferServer interface { + Send(*MutualTransferCoinResponse) error + grpc.ServerStream +} + +type coinServiceMutualTransferServer struct { + grpc.ServerStream +} + +func (x *coinServiceMutualTransferServer) Send(m *MutualTransferCoinResponse) error { + return x.ServerStream.SendMsg(m) +} + +func _CoinService_Revoke_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableRevokeCoinRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CoinServiceServer).Revoke(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CoinService_Revoke_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CoinServiceServer).Revoke(ctx, req.(*DecryptableRevokeCoinRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CoinService_Split_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableSplitCoinRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CoinServiceServer).Split(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CoinService_Split_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CoinServiceServer).Split(ctx, req.(*DecryptableSplitCoinRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CoinService_Transfer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableTransferCoinRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CoinServiceServer).Transfer(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: CoinService_Transfer_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CoinServiceServer).Transfer(ctx, req.(*DecryptableTransferCoinRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// CoinService_ServiceDesc is the grpc.ServiceDesc for CoinService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var CoinService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "quilibrium.node.node.pb.CoinService", + HandlerType: (*CoinServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Allow", + Handler: _CoinService_Allow_Handler, + }, + { + MethodName: "Intersect", + Handler: _CoinService_Intersect_Handler, + }, + { + MethodName: "Merge", + Handler: _CoinService_Merge_Handler, + }, + { + MethodName: "Mint", + Handler: _CoinService_Mint_Handler, + }, + { + MethodName: "Revoke", + Handler: _CoinService_Revoke_Handler, + }, + { + MethodName: "Split", + Handler: _CoinService_Split_Handler, + }, + { + MethodName: "Transfer", + Handler: _CoinService_Transfer_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "MutualReceive", + Handler: _CoinService_MutualReceive_Handler, + ServerStreams: true, + }, + { + StreamName: "MutualTransfer", + Handler: _CoinService_MutualTransfer_Handler, + ServerStreams: true, + }, + }, + Metadata: "node.proto", +} + +const ( + TransactionService_Approve_FullMethodName = "/quilibrium.node.node.pb.TransactionService/Approve" + TransactionService_Reject_FullMethodName = "/quilibrium.node.node.pb.TransactionService/Reject" +) + +// TransactionServiceClient is the client API for TransactionService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type TransactionServiceClient interface { + Approve(ctx context.Context, in *DecryptableApprovePendingTransactionRequest, opts ...grpc.CallOption) (*ApprovePendingTransactionResponse, error) + Reject(ctx context.Context, in *DecryptableRejectPendingTransactionRequest, opts ...grpc.CallOption) (*RejectPendingTransactionResponse, error) +} + +type transactionServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewTransactionServiceClient(cc grpc.ClientConnInterface) TransactionServiceClient { + return &transactionServiceClient{cc} +} + +func (c *transactionServiceClient) Approve(ctx context.Context, in *DecryptableApprovePendingTransactionRequest, opts ...grpc.CallOption) (*ApprovePendingTransactionResponse, error) { + out := new(ApprovePendingTransactionResponse) + err := c.cc.Invoke(ctx, TransactionService_Approve_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *transactionServiceClient) Reject(ctx context.Context, in *DecryptableRejectPendingTransactionRequest, opts ...grpc.CallOption) (*RejectPendingTransactionResponse, error) { + out := new(RejectPendingTransactionResponse) + err := c.cc.Invoke(ctx, TransactionService_Reject_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// TransactionServiceServer is the server API for TransactionService service. +// All implementations must embed UnimplementedTransactionServiceServer +// for forward compatibility +type TransactionServiceServer interface { + Approve(context.Context, *DecryptableApprovePendingTransactionRequest) (*ApprovePendingTransactionResponse, error) + Reject(context.Context, *DecryptableRejectPendingTransactionRequest) (*RejectPendingTransactionResponse, error) + mustEmbedUnimplementedTransactionServiceServer() +} + +// UnimplementedTransactionServiceServer must be embedded to have forward compatible implementations. +type UnimplementedTransactionServiceServer struct { +} + +func (UnimplementedTransactionServiceServer) Approve(context.Context, *DecryptableApprovePendingTransactionRequest) (*ApprovePendingTransactionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Approve not implemented") +} +func (UnimplementedTransactionServiceServer) Reject(context.Context, *DecryptableRejectPendingTransactionRequest) (*RejectPendingTransactionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Reject not implemented") +} +func (UnimplementedTransactionServiceServer) mustEmbedUnimplementedTransactionServiceServer() {} + +// UnsafeTransactionServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to TransactionServiceServer will +// result in compilation errors. +type UnsafeTransactionServiceServer interface { + mustEmbedUnimplementedTransactionServiceServer() +} + +func RegisterTransactionServiceServer(s grpc.ServiceRegistrar, srv TransactionServiceServer) { + s.RegisterService(&TransactionService_ServiceDesc, srv) +} + +func _TransactionService_Approve_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableApprovePendingTransactionRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(TransactionServiceServer).Approve(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: TransactionService_Approve_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(TransactionServiceServer).Approve(ctx, req.(*DecryptableApprovePendingTransactionRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _TransactionService_Reject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DecryptableRejectPendingTransactionRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(TransactionServiceServer).Reject(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: TransactionService_Reject_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(TransactionServiceServer).Reject(ctx, req.(*DecryptableRejectPendingTransactionRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// TransactionService_ServiceDesc is the grpc.ServiceDesc for TransactionService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var TransactionService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "quilibrium.node.node.pb.TransactionService", + HandlerType: (*TransactionServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Approve", + Handler: _TransactionService_Approve_Handler, + }, + { + MethodName: "Reject", + Handler: _TransactionService_Reject_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "node.proto", +} + const ( NodeStats_PutNodeInfo_FullMethodName = "/quilibrium.node.node.pb.NodeStats/PutNodeInfo" NodeStats_PutPeerInfo_FullMethodName = "/quilibrium.node.node.pb.NodeStats/PutPeerInfo"