diff --git a/protobuff/archive.pb.go b/protobuff/archive.pb.go index 83244f1..41977f4 100644 --- a/protobuff/archive.pb.go +++ b/protobuff/archive.pb.go @@ -430,53 +430,6 @@ func (x *GetTransactionResponse) GetTransaction() *Transaction { return nil } -type Transactions struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Transactions []*Transaction `protobuf:"bytes,1,rep,name=transactions,proto3" json:"transactions,omitempty"` -} - -func (x *Transactions) Reset() { - *x = Transactions{} - if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Transactions) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Transactions) ProtoMessage() {} - -func (x *Transactions) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Transactions.ProtoReflect.Descriptor instead. -func (*Transactions) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{6} -} - -func (x *Transactions) GetTransactions() []*Transaction { - if x != nil { - return x.Transactions - } - return nil -} - type GetTickTransactionsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -488,7 +441,7 @@ type GetTickTransactionsRequest struct { func (x *GetTickTransactionsRequest) Reset() { *x = GetTickTransactionsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[7] + mi := &file_archive_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -501,7 +454,7 @@ func (x *GetTickTransactionsRequest) String() string { func (*GetTickTransactionsRequest) ProtoMessage() {} func (x *GetTickTransactionsRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[7] + mi := &file_archive_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -514,7 +467,7 @@ func (x *GetTickTransactionsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetTickTransactionsRequest.ProtoReflect.Descriptor instead. func (*GetTickTransactionsRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{7} + return file_archive_proto_rawDescGZIP(), []int{6} } func (x *GetTickTransactionsRequest) GetTickNumber() uint32 { @@ -535,7 +488,7 @@ type GetTickTransactionsResponse struct { func (x *GetTickTransactionsResponse) Reset() { *x = GetTickTransactionsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[8] + mi := &file_archive_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -548,7 +501,7 @@ func (x *GetTickTransactionsResponse) String() string { func (*GetTickTransactionsResponse) ProtoMessage() {} func (x *GetTickTransactionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[8] + mi := &file_archive_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -561,7 +514,7 @@ func (x *GetTickTransactionsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetTickTransactionsResponse.ProtoReflect.Descriptor instead. func (*GetTickTransactionsResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{8} + return file_archive_proto_rawDescGZIP(), []int{7} } func (x *GetTickTransactionsResponse) GetTransactions() []*Transaction { @@ -587,7 +540,7 @@ type QuorumDiff struct { func (x *QuorumDiff) Reset() { *x = QuorumDiff{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[9] + mi := &file_archive_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -600,7 +553,7 @@ func (x *QuorumDiff) String() string { func (*QuorumDiff) ProtoMessage() {} func (x *QuorumDiff) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[9] + mi := &file_archive_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -613,7 +566,7 @@ func (x *QuorumDiff) ProtoReflect() protoreflect.Message { // Deprecated: Use QuorumDiff.ProtoReflect.Descriptor instead. func (*QuorumDiff) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{9} + return file_archive_proto_rawDescGZIP(), []int{8} } func (x *QuorumDiff) GetSaltedResourceTestingDigestHex() string { @@ -676,7 +629,7 @@ type QuorumTickStructure struct { func (x *QuorumTickStructure) Reset() { *x = QuorumTickStructure{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[10] + mi := &file_archive_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -689,7 +642,7 @@ func (x *QuorumTickStructure) String() string { func (*QuorumTickStructure) ProtoMessage() {} func (x *QuorumTickStructure) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[10] + mi := &file_archive_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -702,7 +655,7 @@ func (x *QuorumTickStructure) ProtoReflect() protoreflect.Message { // Deprecated: Use QuorumTickStructure.ProtoReflect.Descriptor instead. func (*QuorumTickStructure) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{10} + return file_archive_proto_rawDescGZIP(), []int{9} } func (x *QuorumTickStructure) GetEpoch() uint32 { @@ -773,7 +726,7 @@ type SkippedTicksInterval struct { func (x *SkippedTicksInterval) Reset() { *x = SkippedTicksInterval{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[11] + mi := &file_archive_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -786,7 +739,7 @@ func (x *SkippedTicksInterval) String() string { func (*SkippedTicksInterval) ProtoMessage() {} func (x *SkippedTicksInterval) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[11] + mi := &file_archive_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -799,7 +752,7 @@ func (x *SkippedTicksInterval) ProtoReflect() protoreflect.Message { // Deprecated: Use SkippedTicksInterval.ProtoReflect.Descriptor instead. func (*SkippedTicksInterval) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{11} + return file_archive_proto_rawDescGZIP(), []int{10} } func (x *SkippedTicksInterval) GetStartTick() uint32 { @@ -827,7 +780,7 @@ type SkippedTicksIntervalList struct { func (x *SkippedTicksIntervalList) Reset() { *x = SkippedTicksIntervalList{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[12] + mi := &file_archive_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -840,7 +793,7 @@ func (x *SkippedTicksIntervalList) String() string { func (*SkippedTicksIntervalList) ProtoMessage() {} func (x *SkippedTicksIntervalList) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[12] + mi := &file_archive_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -853,7 +806,7 @@ func (x *SkippedTicksIntervalList) ProtoReflect() protoreflect.Message { // Deprecated: Use SkippedTicksIntervalList.ProtoReflect.Descriptor instead. func (*SkippedTicksIntervalList) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{12} + return file_archive_proto_rawDescGZIP(), []int{11} } func (x *SkippedTicksIntervalList) GetSkippedTicks() []*SkippedTicksInterval { @@ -875,7 +828,7 @@ type QuorumTickData struct { func (x *QuorumTickData) Reset() { *x = QuorumTickData{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[13] + mi := &file_archive_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -888,7 +841,7 @@ func (x *QuorumTickData) String() string { func (*QuorumTickData) ProtoMessage() {} func (x *QuorumTickData) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[13] + mi := &file_archive_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -901,7 +854,7 @@ func (x *QuorumTickData) ProtoReflect() protoreflect.Message { // Deprecated: Use QuorumTickData.ProtoReflect.Descriptor instead. func (*QuorumTickData) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{13} + return file_archive_proto_rawDescGZIP(), []int{12} } func (x *QuorumTickData) GetQuorumTickStructure() *QuorumTickStructure { @@ -929,7 +882,7 @@ type GetQuorumTickDataRequest struct { func (x *GetQuorumTickDataRequest) Reset() { *x = GetQuorumTickDataRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[14] + mi := &file_archive_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -942,7 +895,7 @@ func (x *GetQuorumTickDataRequest) String() string { func (*GetQuorumTickDataRequest) ProtoMessage() {} func (x *GetQuorumTickDataRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[14] + mi := &file_archive_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -955,7 +908,7 @@ func (x *GetQuorumTickDataRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetQuorumTickDataRequest.ProtoReflect.Descriptor instead. func (*GetQuorumTickDataRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{14} + return file_archive_proto_rawDescGZIP(), []int{13} } func (x *GetQuorumTickDataRequest) GetTickNumber() uint32 { @@ -976,7 +929,7 @@ type GetQuorumTickDataResponse struct { func (x *GetQuorumTickDataResponse) Reset() { *x = GetQuorumTickDataResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[15] + mi := &file_archive_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -989,7 +942,7 @@ func (x *GetQuorumTickDataResponse) String() string { func (*GetQuorumTickDataResponse) ProtoMessage() {} func (x *GetQuorumTickDataResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[15] + mi := &file_archive_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1002,7 +955,7 @@ func (x *GetQuorumTickDataResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetQuorumTickDataResponse.ProtoReflect.Descriptor instead. func (*GetQuorumTickDataResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{15} + return file_archive_proto_rawDescGZIP(), []int{14} } func (x *GetQuorumTickDataResponse) GetQuorumTickData() *QuorumTickData { @@ -1025,7 +978,7 @@ type Computors struct { func (x *Computors) Reset() { *x = Computors{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[16] + mi := &file_archive_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1038,7 +991,7 @@ func (x *Computors) String() string { func (*Computors) ProtoMessage() {} func (x *Computors) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[16] + mi := &file_archive_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1051,7 +1004,7 @@ func (x *Computors) ProtoReflect() protoreflect.Message { // Deprecated: Use Computors.ProtoReflect.Descriptor instead. func (*Computors) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{16} + return file_archive_proto_rawDescGZIP(), []int{15} } func (x *Computors) GetEpoch() uint32 { @@ -1086,7 +1039,7 @@ type GetComputorsRequest struct { func (x *GetComputorsRequest) Reset() { *x = GetComputorsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[17] + mi := &file_archive_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1099,7 +1052,7 @@ func (x *GetComputorsRequest) String() string { func (*GetComputorsRequest) ProtoMessage() {} func (x *GetComputorsRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[17] + mi := &file_archive_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1112,7 +1065,7 @@ func (x *GetComputorsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetComputorsRequest.ProtoReflect.Descriptor instead. func (*GetComputorsRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{17} + return file_archive_proto_rawDescGZIP(), []int{16} } func (x *GetComputorsRequest) GetEpoch() uint32 { @@ -1133,7 +1086,7 @@ type GetComputorsResponse struct { func (x *GetComputorsResponse) Reset() { *x = GetComputorsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[18] + mi := &file_archive_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1146,7 +1099,7 @@ func (x *GetComputorsResponse) String() string { func (*GetComputorsResponse) ProtoMessage() {} func (x *GetComputorsResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[18] + mi := &file_archive_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1159,7 +1112,7 @@ func (x *GetComputorsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetComputorsResponse.ProtoReflect.Descriptor instead. func (*GetComputorsResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{18} + return file_archive_proto_rawDescGZIP(), []int{17} } func (x *GetComputorsResponse) GetComputors() *Computors { @@ -1189,7 +1142,7 @@ type IdentityInfo struct { func (x *IdentityInfo) Reset() { *x = IdentityInfo{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[19] + mi := &file_archive_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1202,7 +1155,7 @@ func (x *IdentityInfo) String() string { func (*IdentityInfo) ProtoMessage() {} func (x *IdentityInfo) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[19] + mi := &file_archive_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1215,7 +1168,7 @@ func (x *IdentityInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use IdentityInfo.ProtoReflect.Descriptor instead. func (*IdentityInfo) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{19} + return file_archive_proto_rawDescGZIP(), []int{18} } func (x *IdentityInfo) GetId() string { @@ -1293,15 +1246,15 @@ type TransferTransactionsPerTick struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TickNumber uint32 `protobuf:"varint,1,opt,name=tick_number,json=tickNumber,proto3" json:"tick_number,omitempty"` - Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` - Transactions *Transactions `protobuf:"bytes,3,opt,name=transactions,proto3" json:"transactions,omitempty"` + TickNumber uint32 `protobuf:"varint,1,opt,name=tick_number,json=tickNumber,proto3" json:"tick_number,omitempty"` + Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` + Transactions []*Transaction `protobuf:"bytes,3,rep,name=transactions,proto3" json:"transactions,omitempty"` } func (x *TransferTransactionsPerTick) Reset() { *x = TransferTransactionsPerTick{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[20] + mi := &file_archive_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1314,7 +1267,7 @@ func (x *TransferTransactionsPerTick) String() string { func (*TransferTransactionsPerTick) ProtoMessage() {} func (x *TransferTransactionsPerTick) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[20] + mi := &file_archive_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1327,7 +1280,7 @@ func (x *TransferTransactionsPerTick) ProtoReflect() protoreflect.Message { // Deprecated: Use TransferTransactionsPerTick.ProtoReflect.Descriptor instead. func (*TransferTransactionsPerTick) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{20} + return file_archive_proto_rawDescGZIP(), []int{19} } func (x *TransferTransactionsPerTick) GetTickNumber() uint32 { @@ -1344,7 +1297,7 @@ func (x *TransferTransactionsPerTick) GetIdentity() string { return "" } -func (x *TransferTransactionsPerTick) GetTransactions() *Transactions { +func (x *TransferTransactionsPerTick) GetTransactions() []*Transaction { if x != nil { return x.Transactions } @@ -1362,7 +1315,7 @@ type GetIdentityInfoRequest struct { func (x *GetIdentityInfoRequest) Reset() { *x = GetIdentityInfoRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[21] + mi := &file_archive_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1375,7 +1328,7 @@ func (x *GetIdentityInfoRequest) String() string { func (*GetIdentityInfoRequest) ProtoMessage() {} func (x *GetIdentityInfoRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[21] + mi := &file_archive_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1388,7 +1341,7 @@ func (x *GetIdentityInfoRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetIdentityInfoRequest.ProtoReflect.Descriptor instead. func (*GetIdentityInfoRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{21} + return file_archive_proto_rawDescGZIP(), []int{20} } func (x *GetIdentityInfoRequest) GetIdentity() string { @@ -1409,7 +1362,7 @@ type GetIdentityInfoResponse struct { func (x *GetIdentityInfoResponse) Reset() { *x = GetIdentityInfoResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[22] + mi := &file_archive_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1422,7 +1375,7 @@ func (x *GetIdentityInfoResponse) String() string { func (*GetIdentityInfoResponse) ProtoMessage() {} func (x *GetIdentityInfoResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[22] + mi := &file_archive_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1435,7 +1388,7 @@ func (x *GetIdentityInfoResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetIdentityInfoResponse.ProtoReflect.Descriptor instead. func (*GetIdentityInfoResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{22} + return file_archive_proto_rawDescGZIP(), []int{21} } func (x *GetIdentityInfoResponse) GetIdentityInfo() *IdentityInfo { @@ -1454,7 +1407,7 @@ type GetLastProcessedTickRequest struct { func (x *GetLastProcessedTickRequest) Reset() { *x = GetLastProcessedTickRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[23] + mi := &file_archive_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1467,7 +1420,7 @@ func (x *GetLastProcessedTickRequest) String() string { func (*GetLastProcessedTickRequest) ProtoMessage() {} func (x *GetLastProcessedTickRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[23] + mi := &file_archive_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1480,7 +1433,7 @@ func (x *GetLastProcessedTickRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLastProcessedTickRequest.ProtoReflect.Descriptor instead. func (*GetLastProcessedTickRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{23} + return file_archive_proto_rawDescGZIP(), []int{22} } type GetLastProcessedTickResponse struct { @@ -1495,7 +1448,7 @@ type GetLastProcessedTickResponse struct { func (x *GetLastProcessedTickResponse) Reset() { *x = GetLastProcessedTickResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[24] + mi := &file_archive_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1508,7 +1461,7 @@ func (x *GetLastProcessedTickResponse) String() string { func (*GetLastProcessedTickResponse) ProtoMessage() {} func (x *GetLastProcessedTickResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[24] + mi := &file_archive_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1521,7 +1474,7 @@ func (x *GetLastProcessedTickResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLastProcessedTickResponse.ProtoReflect.Descriptor instead. func (*GetLastProcessedTickResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{24} + return file_archive_proto_rawDescGZIP(), []int{23} } func (x *GetLastProcessedTickResponse) GetLastProcessedTick() uint32 { @@ -1549,7 +1502,7 @@ type SendRawTransactionRequest struct { func (x *SendRawTransactionRequest) Reset() { *x = SendRawTransactionRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[25] + mi := &file_archive_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1562,7 +1515,7 @@ func (x *SendRawTransactionRequest) String() string { func (*SendRawTransactionRequest) ProtoMessage() {} func (x *SendRawTransactionRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[25] + mi := &file_archive_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1575,7 +1528,7 @@ func (x *SendRawTransactionRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SendRawTransactionRequest.ProtoReflect.Descriptor instead. func (*SendRawTransactionRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{25} + return file_archive_proto_rawDescGZIP(), []int{24} } func (x *SendRawTransactionRequest) GetSignedTx() string { @@ -1596,7 +1549,7 @@ type SendRawTransactionResponse struct { func (x *SendRawTransactionResponse) Reset() { *x = SendRawTransactionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[26] + mi := &file_archive_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1609,7 +1562,7 @@ func (x *SendRawTransactionResponse) String() string { func (*SendRawTransactionResponse) ProtoMessage() {} func (x *SendRawTransactionResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[26] + mi := &file_archive_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1622,7 +1575,7 @@ func (x *SendRawTransactionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SendRawTransactionResponse.ProtoReflect.Descriptor instead. func (*SendRawTransactionResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{26} + return file_archive_proto_rawDescGZIP(), []int{25} } func (x *SendRawTransactionResponse) GetMessage() string { @@ -1641,7 +1594,7 @@ type GetSkippedTicksRequest struct { func (x *GetSkippedTicksRequest) Reset() { *x = GetSkippedTicksRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[27] + mi := &file_archive_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1654,7 +1607,7 @@ func (x *GetSkippedTicksRequest) String() string { func (*GetSkippedTicksRequest) ProtoMessage() {} func (x *GetSkippedTicksRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[27] + mi := &file_archive_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1667,7 +1620,7 @@ func (x *GetSkippedTicksRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetSkippedTicksRequest.ProtoReflect.Descriptor instead. func (*GetSkippedTicksRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{27} + return file_archive_proto_rawDescGZIP(), []int{26} } type GetSkippedTicksResponse struct { @@ -1681,7 +1634,7 @@ type GetSkippedTicksResponse struct { func (x *GetSkippedTicksResponse) Reset() { *x = GetSkippedTicksResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[28] + mi := &file_archive_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1694,7 +1647,7 @@ func (x *GetSkippedTicksResponse) String() string { func (*GetSkippedTicksResponse) ProtoMessage() {} func (x *GetSkippedTicksResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[28] + mi := &file_archive_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1707,7 +1660,7 @@ func (x *GetSkippedTicksResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetSkippedTicksResponse.ProtoReflect.Descriptor instead. func (*GetSkippedTicksResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{28} + return file_archive_proto_rawDescGZIP(), []int{27} } func (x *GetSkippedTicksResponse) GetSkippedTicks() []*SkippedTicksInterval { @@ -1730,7 +1683,7 @@ type GetTransferTransactionsPerTickRequest struct { func (x *GetTransferTransactionsPerTickRequest) Reset() { *x = GetTransferTransactionsPerTickRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[29] + mi := &file_archive_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1743,7 +1696,7 @@ func (x *GetTransferTransactionsPerTickRequest) String() string { func (*GetTransferTransactionsPerTickRequest) ProtoMessage() {} func (x *GetTransferTransactionsPerTickRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[29] + mi := &file_archive_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1756,7 +1709,7 @@ func (x *GetTransferTransactionsPerTickRequest) ProtoReflect() protoreflect.Mess // Deprecated: Use GetTransferTransactionsPerTickRequest.ProtoReflect.Descriptor instead. func (*GetTransferTransactionsPerTickRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{29} + return file_archive_proto_rawDescGZIP(), []int{28} } func (x *GetTransferTransactionsPerTickRequest) GetIdentity() string { @@ -1791,7 +1744,7 @@ type GetTransferTransactionsPerTickResponse struct { func (x *GetTransferTransactionsPerTickResponse) Reset() { *x = GetTransferTransactionsPerTickResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[30] + mi := &file_archive_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1804,7 +1757,7 @@ func (x *GetTransferTransactionsPerTickResponse) String() string { func (*GetTransferTransactionsPerTickResponse) ProtoMessage() {} func (x *GetTransferTransactionsPerTickResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[30] + mi := &file_archive_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1817,7 +1770,7 @@ func (x *GetTransferTransactionsPerTickResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use GetTransferTransactionsPerTickResponse.ProtoReflect.Descriptor instead. func (*GetTransferTransactionsPerTickResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{30} + return file_archive_proto_rawDescGZIP(), []int{29} } func (x *GetTransferTransactionsPerTickResponse) GetTransferTransactionsPerTick() []*TransferTransactionsPerTick { @@ -1838,7 +1791,7 @@ type GetQChainHashRequest struct { func (x *GetQChainHashRequest) Reset() { *x = GetQChainHashRequest{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[31] + mi := &file_archive_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1851,7 +1804,7 @@ func (x *GetQChainHashRequest) String() string { func (*GetQChainHashRequest) ProtoMessage() {} func (x *GetQChainHashRequest) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[31] + mi := &file_archive_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1864,7 +1817,7 @@ func (x *GetQChainHashRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetQChainHashRequest.ProtoReflect.Descriptor instead. func (*GetQChainHashRequest) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{31} + return file_archive_proto_rawDescGZIP(), []int{30} } func (x *GetQChainHashRequest) GetTickNumber() uint32 { @@ -1885,7 +1838,7 @@ type GetQChainHashResponse struct { func (x *GetQChainHashResponse) Reset() { *x = GetQChainHashResponse{} if protoimpl.UnsafeEnabled { - mi := &file_archive_proto_msgTypes[32] + mi := &file_archive_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1898,7 +1851,7 @@ func (x *GetQChainHashResponse) String() string { func (*GetQChainHashResponse) ProtoMessage() {} func (x *GetQChainHashResponse) ProtoReflect() protoreflect.Message { - mi := &file_archive_proto_msgTypes[32] + mi := &file_archive_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1911,7 +1864,7 @@ func (x *GetQChainHashResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetQChainHashResponse.ProtoReflect.Descriptor instead. func (*GetQChainHashResponse) Descriptor() ([]byte, []int) { - return file_archive_proto_rawDescGZIP(), []int{32} + return file_archive_proto_rawDescGZIP(), []int{31} } func (x *GetQChainHashResponse) GetHexDigest() string { @@ -1981,336 +1934,330 @@ var file_archive_proto_rawDesc = []byte{ 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x74, 0x72, 0x61, - 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x5a, 0x0a, 0x0c, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, - 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, - 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3d, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x22, 0x69, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, - 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, - 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xfb, - 0x02, 0x0a, 0x0a, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x12, 0x4a, 0x0a, - 0x22, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, - 0x68, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e, 0x73, 0x61, 0x6c, 0x74, 0x65, - 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, - 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x1a, 0x73, 0x61, 0x6c, - 0x74, 0x65, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x72, 0x75, 0x6d, 0x5f, 0x64, 0x69, 0x67, - 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x73, - 0x61, 0x6c, 0x74, 0x65, 0x64, 0x53, 0x70, 0x65, 0x63, 0x74, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x67, - 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x1a, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, - 0x5f, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, - 0x5f, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x73, 0x61, 0x6c, 0x74, - 0x65, 0x64, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, - 0x48, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x1a, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, - 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, - 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, 0x43, + 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3d, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x54, + 0x69, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, + 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x69, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x54, 0x69, + 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x71, + 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, + 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x22, 0xfb, 0x02, 0x0a, 0x0a, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x66, + 0x66, 0x12, 0x4a, 0x0a, 0x22, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x67, + 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e, 0x73, + 0x61, 0x6c, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x65, 0x73, + 0x74, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x3b, 0x0a, + 0x1a, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x72, 0x75, 0x6d, + 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x17, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, 0x53, 0x70, 0x65, 0x63, 0x74, 0x72, 0x75, + 0x6d, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x1a, 0x73, 0x61, + 0x6c, 0x74, 0x65, 0x64, 0x5f, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x64, 0x69, + 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, + 0x73, 0x61, 0x6c, 0x74, 0x65, 0x64, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x44, 0x69, + 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x1a, 0x73, 0x61, 0x6c, 0x74, 0x65, + 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, + 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x73, 0x61, 0x6c, + 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x44, 0x69, 0x67, 0x65, 0x73, + 0x74, 0x48, 0x65, 0x78, 0x12, 0x45, 0x0a, 0x20, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, + 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x78, 0x5f, 0x64, 0x69, + 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1b, + 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4e, 0x65, 0x78, 0x74, 0x54, 0x69, 0x63, 0x6b, + 0x54, 0x78, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x65, 0x78, + 0x22, 0x81, 0x03, 0x0a, 0x13, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, + 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1f, + 0x0a, 0x0b, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x46, 0x0a, + 0x20, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, + 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, + 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1c, 0x70, 0x72, 0x65, 0x76, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x67, 0x65, + 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x73, 0x70, + 0x65, 0x63, 0x74, 0x72, 0x75, 0x6d, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, + 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 0x53, 0x70, 0x65, + 0x63, 0x74, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x37, + 0x0a, 0x18, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, + 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x44, 0x69, + 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x76, 0x5f, + 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, + 0x68, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, - 0x12, 0x45, 0x0a, 0x20, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x6e, 0x65, 0x78, - 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x78, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, - 0x5f, 0x68, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1b, 0x65, 0x78, 0x70, 0x65, - 0x63, 0x74, 0x65, 0x64, 0x4e, 0x65, 0x78, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x78, 0x44, 0x69, - 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x65, 0x78, 0x22, 0x81, 0x03, 0x0a, - 0x13, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x75, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, - 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x46, 0x0a, 0x20, 0x70, 0x72, 0x65, - 0x76, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x69, - 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x1c, 0x70, 0x72, 0x65, 0x76, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x54, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, - 0x78, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x72, - 0x75, 0x6d, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 0x53, 0x70, 0x65, 0x63, 0x74, 0x72, 0x75, - 0x6d, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x72, - 0x65, 0x76, 0x5f, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x5f, 0x64, 0x69, 0x67, 0x65, - 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x70, 0x72, - 0x65, 0x76, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, - 0x48, 0x65, 0x78, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x63, 0x6f, 0x6d, 0x70, - 0x75, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 0x43, 0x6f, 0x6d, 0x70, 0x75, - 0x74, 0x65, 0x72, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, 0x12, 0x22, 0x0a, 0x0d, - 0x74, 0x78, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x78, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x78, - 0x22, 0x50, 0x0a, 0x14, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, - 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, - 0x69, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, - 0x63, 0x6b, 0x22, 0x70, 0x0a, 0x18, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, - 0x6b, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x54, - 0x0a, 0x0d, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, - 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, - 0x62, 0x2e, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x52, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, - 0x69, 0x63, 0x6b, 0x73, 0x22, 0xe4, 0x02, 0x0a, 0x0e, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, - 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x62, 0x0a, 0x15, 0x71, 0x75, 0x6f, 0x72, 0x75, - 0x6d, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, - 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, - 0x70, 0x62, 0x2e, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x52, 0x13, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, - 0x63, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x7d, 0x0a, 0x18, 0x71, - 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, - 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, - 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, - 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, - 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x44, - 0x69, 0x66, 0x66, 0x50, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x15, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x50, - 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x1a, 0x6f, 0x0a, 0x1a, 0x51, 0x75, - 0x6f, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x50, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x75, - 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x62, 0x69, + 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x78, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, + 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x78, 0x44, 0x69, 0x67, 0x65, 0x73, + 0x74, 0x48, 0x65, 0x78, 0x22, 0x50, 0x0a, 0x14, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, + 0x69, 0x63, 0x6b, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x65, + 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, + 0x6e, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x22, 0x70, 0x0a, 0x18, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, + 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x4c, 0x69, + 0x73, 0x74, 0x12, 0x54, 0x0a, 0x0d, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x74, 0x69, + 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, - 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x66, 0x66, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3b, 0x0a, 0x18, 0x47, - 0x65, 0x74, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x63, 0x6b, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x69, - 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x70, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x51, - 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x10, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x5f, - 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x29, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, - 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x51, 0x75, 0x6f, 0x72, - 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x71, 0x75, 0x6f, 0x72, - 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x22, 0x66, 0x0a, 0x09, 0x43, 0x6f, - 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x1e, 0x0a, - 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x23, 0x0a, - 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, - 0x65, 0x78, 0x22, 0x2b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, - 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, - 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x22, - 0x5a, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x75, - 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x71, 0x75, 0x62, + 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, + 0x6b, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x52, 0x0c, 0x73, 0x6b, 0x69, 0x70, + 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x22, 0xe4, 0x02, 0x0a, 0x0e, 0x51, 0x75, 0x6f, + 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x62, 0x0a, 0x15, 0x71, + 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, - 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, - 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x22, 0xbc, 0x03, 0x0a, 0x0c, - 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, - 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, - 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6f, 0x6d, - 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6d, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x67, 0x6f, - 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x72, 0x5f, - 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, - 0x72, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6e, 0x72, 0x49, 0x6e, 0x63, 0x6f, - 0x6d, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x12, 0x32, 0x0a, - 0x15, 0x6e, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6e, 0x72, - 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, - 0x73, 0x12, 0x41, 0x0a, 0x1d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x63, 0x6f, - 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x69, - 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, - 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, - 0x54, 0x69, 0x63, 0x6b, 0x12, 0x41, 0x0a, 0x1d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6f, - 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, - 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6c, 0x61, 0x74, - 0x65, 0x73, 0x74, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x66, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x69, 0x62, 0x6c, 0x69, - 0x6e, 0x67, 0x73, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x73, - 0x69, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x48, 0x65, 0x78, 0x22, 0xa7, 0x01, 0x0a, 0x1b, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, - 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x69, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x4b, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, + 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, + 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x52, 0x13, 0x71, 0x75, 0x6f, 0x72, + 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, + 0x7d, 0x0a, 0x18, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x70, + 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x44, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, + 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x51, 0x75, + 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x51, 0x75, 0x6f, + 0x72, 0x75, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x50, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, + 0x6f, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x44, + 0x69, 0x66, 0x66, 0x50, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x1a, 0x6f, + 0x0a, 0x1a, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x50, 0x65, 0x72, 0x43, + 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3b, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, - 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x34, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, - 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x67, 0x0a, 0x17, 0x47, 0x65, - 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0d, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, - 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, - 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, - 0x6e, 0x66, 0x6f, 0x22, 0x1d, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, - 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x22, 0xbb, 0x02, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, - 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, - 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, - 0x69, 0x63, 0x6b, 0x12, 0x9b, 0x01, 0x0a, 0x1e, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x5f, 0x70, 0x65, 0x72, - 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x71, - 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, - 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, - 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, - 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x50, 0x65, 0x72, 0x45, 0x70, 0x6f, 0x63, 0x68, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x1a, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x50, 0x65, 0x72, 0x45, 0x70, 0x6f, 0x63, - 0x68, 0x1a, 0x4d, 0x0a, 0x1f, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x50, 0x65, 0x72, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0x38, 0x0a, 0x19, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, - 0x09, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x78, 0x22, 0x36, 0x0a, 0x1a, 0x53, 0x65, - 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, - 0x54, 0x69, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x6f, 0x0a, 0x17, - 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x0d, 0x73, 0x6b, 0x69, 0x70, 0x70, - 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, + 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, + 0x44, 0x69, 0x66, 0x66, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, + 0x3b, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, + 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x70, 0x0a, 0x19, + 0x47, 0x65, 0x74, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x10, 0x71, 0x75, 0x6f, + 0x72, 0x75, 0x6d, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, + 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, + 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, + 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x22, 0x66, + 0x0a, 0x09, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, + 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, + 0x68, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x68, + 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x48, 0x65, 0x78, 0x22, 0x2b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, + 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, + 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x65, 0x70, + 0x6f, 0x63, 0x68, 0x22, 0x5a, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, + 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x09, 0x63, + 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, - 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x6b, 0x69, 0x70, 0x70, - 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x52, - 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x22, 0x7d, 0x0a, - 0x25, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x63, - 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x22, 0xa5, 0x01, 0x0a, - 0x26, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x1e, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x66, 0x65, 0x72, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x36, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, - 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, 0x61, 0x6e, + 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x75, + 0x74, 0x6f, 0x72, 0x73, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x22, + 0xbc, 0x03, 0x0a, 0x0c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, + 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, + 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6f, + 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, + 0x15, 0x6e, 0x72, 0x5f, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6e, 0x72, + 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, + 0x73, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, + 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x13, 0x6e, 0x72, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x65, 0x72, 0x73, 0x12, 0x41, 0x0a, 0x1d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, + 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6c, 0x61, + 0x74, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x41, 0x0a, 0x1d, 0x6c, 0x61, 0x74, 0x65, + 0x73, 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x1a, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x73, + 0x69, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0b, 0x73, 0x69, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x48, 0x65, 0x78, 0x22, 0xa6, + 0x01, 0x0a, 0x1b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x1f, + 0x0a, 0x0b, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x4a, 0x0a, 0x0c, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x26, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, + 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x34, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x67, 0x0a, + 0x17, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0d, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x27, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, + 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x1d, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, + 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xbb, 0x02, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, + 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x70, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x9b, 0x01, 0x0a, 0x1e, 0x6c, 0x61, 0x73, 0x74, 0x5f, + 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x5f, + 0x70, 0x65, 0x72, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x57, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, + 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x4c, + 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x50, 0x65, 0x72, 0x45, 0x70, + 0x6f, 0x63, 0x68, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x1a, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x50, 0x65, 0x72, 0x45, + 0x70, 0x6f, 0x63, 0x68, 0x1a, 0x4d, 0x0a, 0x1f, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x50, 0x65, 0x72, 0x45, 0x70, 0x6f, + 0x63, 0x68, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x38, 0x0a, 0x19, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x78, 0x22, 0x36, 0x0a, + 0x1a, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, + 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, + 0x6f, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, + 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x0d, 0x73, 0x6b, + 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2f, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, + 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x6b, + 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, + 0x61, 0x6c, 0x52, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, + 0x22, 0x7d, 0x0a, 0x25, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, + 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, + 0x69, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x54, 0x69, 0x63, 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x22, + 0xa5, 0x01, 0x0a, 0x26, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, + 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x1e, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, + 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x1b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x1b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, - 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, - 0x54, 0x69, 0x63, 0x6b, 0x22, 0x37, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, - 0x6e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, - 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x36, 0x0a, - 0x15, 0x47, 0x65, 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x65, 0x78, 0x5f, 0x64, 0x69, - 0x67, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x78, 0x44, - 0x69, 0x67, 0x65, 0x73, 0x74, 0x32, 0x8b, 0x0b, 0x0a, 0x0e, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6c, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x54, - 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2d, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, - 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, - 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, - 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, - 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x54, 0x69, - 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, - 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, - 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x69, - 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, - 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, - 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, - 0x0e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x30, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, - 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x31, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, - 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, - 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7e, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x51, 0x75, 0x6f, 0x72, 0x75, - 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x33, 0x2e, 0x71, 0x75, 0x62, 0x69, + 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x22, 0x37, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x51, 0x43, + 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x22, 0x36, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x65, 0x78, + 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, + 0x65, 0x78, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x32, 0x8b, 0x0b, 0x0a, 0x0e, 0x41, 0x72, 0x63, + 0x68, 0x69, 0x76, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6c, 0x0a, 0x0b, 0x47, + 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2d, 0x2e, 0x71, 0x75, 0x62, + 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, + 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, - 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, - 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, - 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, - 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x51, 0x75, - 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, - 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2e, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, - 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, - 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, - 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, - 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x31, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, + 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x13, 0x47, 0x65, + 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x12, 0x35, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, + 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, + 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, - 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x71, 0x75, + 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x75, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x30, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, + 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, + 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, + 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, + 0x2e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7e, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x51, 0x75, + 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x33, 0x2e, 0x71, + 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, + 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x51, 0x75, 0x6f, 0x72, + 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x34, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, + 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, + 0x74, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x43, 0x6f, + 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2e, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, + 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, + 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, + 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, + 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x6f, 0x72, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x49, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x31, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x87, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x36, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, - 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, - 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, - 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x37, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, - 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, - 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, 0x12, 0x53, 0x65, - 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x34, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, - 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, - 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, - 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, - 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, - 0x0f, 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, - 0x12, 0x31, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, - 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, - 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, + 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, + 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, + 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x87, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x36, 0x2e, 0x71, 0x75, + 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, + 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, + 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, + 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, + 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x81, 0x01, 0x0a, + 0x12, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, + 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, + 0x53, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x71, 0x75, 0x62, 0x69, + 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, + 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x77, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x78, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, + 0x63, 0x6b, 0x73, 0x12, 0x31, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa5, 0x01, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x54, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, + 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, + 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x54, 0x69, 0x63, + 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa5, 0x01, 0x0a, 0x1e, 0x47, + 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x40, 0x2e, + 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, + 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x41, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, + 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x40, 0x2e, 0x71, 0x75, 0x62, - 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, - 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x65, - 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x71, - 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, - 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x66, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x72, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, - 0x12, 0x2f, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, - 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, - 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x30, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, - 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, - 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x42, 0x29, 0x5a, 0x27, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, - 0x6d, 0x2f, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2d, 0x61, 0x72, 0x63, 0x68, 0x69, - 0x76, 0x65, 0x72, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x6e, 0x73, 0x50, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, + 0x61, 0x73, 0x68, 0x12, 0x2f, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, 0x68, + 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, 0x2e, + 0x47, 0x65, 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2e, 0x61, 0x72, 0x63, + 0x68, 0x69, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x62, + 0x2e, 0x47, 0x65, 0x74, 0x51, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x29, 0x5a, 0x27, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x71, 0x75, 0x62, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2d, 0x61, 0x72, + 0x63, 0x68, 0x69, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x66, + 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2325,7 +2272,7 @@ func file_archive_proto_rawDescGZIP() []byte { return file_archive_proto_rawDescData } -var file_archive_proto_msgTypes = make([]protoimpl.MessageInfo, 35) +var file_archive_proto_msgTypes = make([]protoimpl.MessageInfo, 34) var file_archive_proto_goTypes = []interface{}{ (*TickData)(nil), // 0: qubic.archiver.archive.pb.TickData (*GetTickDataRequest)(nil), // 1: qubic.archiver.archive.pb.GetTickDataRequest @@ -2333,79 +2280,77 @@ var file_archive_proto_goTypes = []interface{}{ (*Transaction)(nil), // 3: qubic.archiver.archive.pb.Transaction (*GetTransactionRequest)(nil), // 4: qubic.archiver.archive.pb.GetTransactionRequest (*GetTransactionResponse)(nil), // 5: qubic.archiver.archive.pb.GetTransactionResponse - (*Transactions)(nil), // 6: qubic.archiver.archive.pb.Transactions - (*GetTickTransactionsRequest)(nil), // 7: qubic.archiver.archive.pb.GetTickTransactionsRequest - (*GetTickTransactionsResponse)(nil), // 8: qubic.archiver.archive.pb.GetTickTransactionsResponse - (*QuorumDiff)(nil), // 9: qubic.archiver.archive.pb.QuorumDiff - (*QuorumTickStructure)(nil), // 10: qubic.archiver.archive.pb.QuorumTickStructure - (*SkippedTicksInterval)(nil), // 11: qubic.archiver.archive.pb.SkippedTicksInterval - (*SkippedTicksIntervalList)(nil), // 12: qubic.archiver.archive.pb.SkippedTicksIntervalList - (*QuorumTickData)(nil), // 13: qubic.archiver.archive.pb.QuorumTickData - (*GetQuorumTickDataRequest)(nil), // 14: qubic.archiver.archive.pb.GetQuorumTickDataRequest - (*GetQuorumTickDataResponse)(nil), // 15: qubic.archiver.archive.pb.GetQuorumTickDataResponse - (*Computors)(nil), // 16: qubic.archiver.archive.pb.Computors - (*GetComputorsRequest)(nil), // 17: qubic.archiver.archive.pb.GetComputorsRequest - (*GetComputorsResponse)(nil), // 18: qubic.archiver.archive.pb.GetComputorsResponse - (*IdentityInfo)(nil), // 19: qubic.archiver.archive.pb.IdentityInfo - (*TransferTransactionsPerTick)(nil), // 20: qubic.archiver.archive.pb.TransferTransactionsPerTick - (*GetIdentityInfoRequest)(nil), // 21: qubic.archiver.archive.pb.GetIdentityInfoRequest - (*GetIdentityInfoResponse)(nil), // 22: qubic.archiver.archive.pb.GetIdentityInfoResponse - (*GetLastProcessedTickRequest)(nil), // 23: qubic.archiver.archive.pb.GetLastProcessedTickRequest - (*GetLastProcessedTickResponse)(nil), // 24: qubic.archiver.archive.pb.GetLastProcessedTickResponse - (*SendRawTransactionRequest)(nil), // 25: qubic.archiver.archive.pb.SendRawTransactionRequest - (*SendRawTransactionResponse)(nil), // 26: qubic.archiver.archive.pb.SendRawTransactionResponse - (*GetSkippedTicksRequest)(nil), // 27: qubic.archiver.archive.pb.GetSkippedTicksRequest - (*GetSkippedTicksResponse)(nil), // 28: qubic.archiver.archive.pb.GetSkippedTicksResponse - (*GetTransferTransactionsPerTickRequest)(nil), // 29: qubic.archiver.archive.pb.GetTransferTransactionsPerTickRequest - (*GetTransferTransactionsPerTickResponse)(nil), // 30: qubic.archiver.archive.pb.GetTransferTransactionsPerTickResponse - (*GetQChainHashRequest)(nil), // 31: qubic.archiver.archive.pb.GetQChainHashRequest - (*GetQChainHashResponse)(nil), // 32: qubic.archiver.archive.pb.GetQChainHashResponse - nil, // 33: qubic.archiver.archive.pb.QuorumTickData.QuorumDiffPerComputorEntry - nil, // 34: qubic.archiver.archive.pb.GetLastProcessedTickResponse.LastProcessedTicksPerEpochEntry + (*GetTickTransactionsRequest)(nil), // 6: qubic.archiver.archive.pb.GetTickTransactionsRequest + (*GetTickTransactionsResponse)(nil), // 7: qubic.archiver.archive.pb.GetTickTransactionsResponse + (*QuorumDiff)(nil), // 8: qubic.archiver.archive.pb.QuorumDiff + (*QuorumTickStructure)(nil), // 9: qubic.archiver.archive.pb.QuorumTickStructure + (*SkippedTicksInterval)(nil), // 10: qubic.archiver.archive.pb.SkippedTicksInterval + (*SkippedTicksIntervalList)(nil), // 11: qubic.archiver.archive.pb.SkippedTicksIntervalList + (*QuorumTickData)(nil), // 12: qubic.archiver.archive.pb.QuorumTickData + (*GetQuorumTickDataRequest)(nil), // 13: qubic.archiver.archive.pb.GetQuorumTickDataRequest + (*GetQuorumTickDataResponse)(nil), // 14: qubic.archiver.archive.pb.GetQuorumTickDataResponse + (*Computors)(nil), // 15: qubic.archiver.archive.pb.Computors + (*GetComputorsRequest)(nil), // 16: qubic.archiver.archive.pb.GetComputorsRequest + (*GetComputorsResponse)(nil), // 17: qubic.archiver.archive.pb.GetComputorsResponse + (*IdentityInfo)(nil), // 18: qubic.archiver.archive.pb.IdentityInfo + (*TransferTransactionsPerTick)(nil), // 19: qubic.archiver.archive.pb.TransferTransactionsPerTick + (*GetIdentityInfoRequest)(nil), // 20: qubic.archiver.archive.pb.GetIdentityInfoRequest + (*GetIdentityInfoResponse)(nil), // 21: qubic.archiver.archive.pb.GetIdentityInfoResponse + (*GetLastProcessedTickRequest)(nil), // 22: qubic.archiver.archive.pb.GetLastProcessedTickRequest + (*GetLastProcessedTickResponse)(nil), // 23: qubic.archiver.archive.pb.GetLastProcessedTickResponse + (*SendRawTransactionRequest)(nil), // 24: qubic.archiver.archive.pb.SendRawTransactionRequest + (*SendRawTransactionResponse)(nil), // 25: qubic.archiver.archive.pb.SendRawTransactionResponse + (*GetSkippedTicksRequest)(nil), // 26: qubic.archiver.archive.pb.GetSkippedTicksRequest + (*GetSkippedTicksResponse)(nil), // 27: qubic.archiver.archive.pb.GetSkippedTicksResponse + (*GetTransferTransactionsPerTickRequest)(nil), // 28: qubic.archiver.archive.pb.GetTransferTransactionsPerTickRequest + (*GetTransferTransactionsPerTickResponse)(nil), // 29: qubic.archiver.archive.pb.GetTransferTransactionsPerTickResponse + (*GetQChainHashRequest)(nil), // 30: qubic.archiver.archive.pb.GetQChainHashRequest + (*GetQChainHashResponse)(nil), // 31: qubic.archiver.archive.pb.GetQChainHashResponse + nil, // 32: qubic.archiver.archive.pb.QuorumTickData.QuorumDiffPerComputorEntry + nil, // 33: qubic.archiver.archive.pb.GetLastProcessedTickResponse.LastProcessedTicksPerEpochEntry } var file_archive_proto_depIdxs = []int32{ 0, // 0: qubic.archiver.archive.pb.GetTickDataResponse.tick_data:type_name -> qubic.archiver.archive.pb.TickData 3, // 1: qubic.archiver.archive.pb.GetTransactionResponse.transaction:type_name -> qubic.archiver.archive.pb.Transaction - 3, // 2: qubic.archiver.archive.pb.Transactions.transactions:type_name -> qubic.archiver.archive.pb.Transaction - 3, // 3: qubic.archiver.archive.pb.GetTickTransactionsResponse.transactions:type_name -> qubic.archiver.archive.pb.Transaction - 11, // 4: qubic.archiver.archive.pb.SkippedTicksIntervalList.skipped_ticks:type_name -> qubic.archiver.archive.pb.SkippedTicksInterval - 10, // 5: qubic.archiver.archive.pb.QuorumTickData.quorum_tick_structure:type_name -> qubic.archiver.archive.pb.QuorumTickStructure - 33, // 6: qubic.archiver.archive.pb.QuorumTickData.quorum_diff_per_computor:type_name -> qubic.archiver.archive.pb.QuorumTickData.QuorumDiffPerComputorEntry - 13, // 7: qubic.archiver.archive.pb.GetQuorumTickDataResponse.quorum_tick_data:type_name -> qubic.archiver.archive.pb.QuorumTickData - 16, // 8: qubic.archiver.archive.pb.GetComputorsResponse.computors:type_name -> qubic.archiver.archive.pb.Computors - 6, // 9: qubic.archiver.archive.pb.TransferTransactionsPerTick.transactions:type_name -> qubic.archiver.archive.pb.Transactions - 19, // 10: qubic.archiver.archive.pb.GetIdentityInfoResponse.identity_info:type_name -> qubic.archiver.archive.pb.IdentityInfo - 34, // 11: qubic.archiver.archive.pb.GetLastProcessedTickResponse.last_processed_ticks_per_epoch:type_name -> qubic.archiver.archive.pb.GetLastProcessedTickResponse.LastProcessedTicksPerEpochEntry - 11, // 12: qubic.archiver.archive.pb.GetSkippedTicksResponse.skipped_ticks:type_name -> qubic.archiver.archive.pb.SkippedTicksInterval - 20, // 13: qubic.archiver.archive.pb.GetTransferTransactionsPerTickResponse.transfer_transactions_per_tick:type_name -> qubic.archiver.archive.pb.TransferTransactionsPerTick - 9, // 14: qubic.archiver.archive.pb.QuorumTickData.QuorumDiffPerComputorEntry.value:type_name -> qubic.archiver.archive.pb.QuorumDiff - 1, // 15: qubic.archiver.archive.pb.ArchiveService.GetTickData:input_type -> qubic.archiver.archive.pb.GetTickDataRequest - 7, // 16: qubic.archiver.archive.pb.ArchiveService.GetTickTransactions:input_type -> qubic.archiver.archive.pb.GetTickTransactionsRequest - 4, // 17: qubic.archiver.archive.pb.ArchiveService.GetTransaction:input_type -> qubic.archiver.archive.pb.GetTransactionRequest - 14, // 18: qubic.archiver.archive.pb.ArchiveService.GetQuorumTickData:input_type -> qubic.archiver.archive.pb.GetQuorumTickDataRequest - 17, // 19: qubic.archiver.archive.pb.ArchiveService.GetComputors:input_type -> qubic.archiver.archive.pb.GetComputorsRequest - 21, // 20: qubic.archiver.archive.pb.ArchiveService.GetIdentityInfo:input_type -> qubic.archiver.archive.pb.GetIdentityInfoRequest - 23, // 21: qubic.archiver.archive.pb.ArchiveService.GetLastProcessedTick:input_type -> qubic.archiver.archive.pb.GetLastProcessedTickRequest - 25, // 22: qubic.archiver.archive.pb.ArchiveService.SendRawTransaction:input_type -> qubic.archiver.archive.pb.SendRawTransactionRequest - 27, // 23: qubic.archiver.archive.pb.ArchiveService.GetSkippedTicks:input_type -> qubic.archiver.archive.pb.GetSkippedTicksRequest - 29, // 24: qubic.archiver.archive.pb.ArchiveService.GetTransferTransactionsPerTick:input_type -> qubic.archiver.archive.pb.GetTransferTransactionsPerTickRequest - 31, // 25: qubic.archiver.archive.pb.ArchiveService.GetQChainHash:input_type -> qubic.archiver.archive.pb.GetQChainHashRequest - 2, // 26: qubic.archiver.archive.pb.ArchiveService.GetTickData:output_type -> qubic.archiver.archive.pb.GetTickDataResponse - 8, // 27: qubic.archiver.archive.pb.ArchiveService.GetTickTransactions:output_type -> qubic.archiver.archive.pb.GetTickTransactionsResponse - 5, // 28: qubic.archiver.archive.pb.ArchiveService.GetTransaction:output_type -> qubic.archiver.archive.pb.GetTransactionResponse - 15, // 29: qubic.archiver.archive.pb.ArchiveService.GetQuorumTickData:output_type -> qubic.archiver.archive.pb.GetQuorumTickDataResponse - 18, // 30: qubic.archiver.archive.pb.ArchiveService.GetComputors:output_type -> qubic.archiver.archive.pb.GetComputorsResponse - 22, // 31: qubic.archiver.archive.pb.ArchiveService.GetIdentityInfo:output_type -> qubic.archiver.archive.pb.GetIdentityInfoResponse - 24, // 32: qubic.archiver.archive.pb.ArchiveService.GetLastProcessedTick:output_type -> qubic.archiver.archive.pb.GetLastProcessedTickResponse - 26, // 33: qubic.archiver.archive.pb.ArchiveService.SendRawTransaction:output_type -> qubic.archiver.archive.pb.SendRawTransactionResponse - 28, // 34: qubic.archiver.archive.pb.ArchiveService.GetSkippedTicks:output_type -> qubic.archiver.archive.pb.GetSkippedTicksResponse - 30, // 35: qubic.archiver.archive.pb.ArchiveService.GetTransferTransactionsPerTick:output_type -> qubic.archiver.archive.pb.GetTransferTransactionsPerTickResponse - 32, // 36: qubic.archiver.archive.pb.ArchiveService.GetQChainHash:output_type -> qubic.archiver.archive.pb.GetQChainHashResponse - 26, // [26:37] is the sub-list for method output_type - 15, // [15:26] is the sub-list for method input_type - 15, // [15:15] is the sub-list for extension type_name - 15, // [15:15] is the sub-list for extension extendee - 0, // [0:15] is the sub-list for field type_name + 3, // 2: qubic.archiver.archive.pb.GetTickTransactionsResponse.transactions:type_name -> qubic.archiver.archive.pb.Transaction + 10, // 3: qubic.archiver.archive.pb.SkippedTicksIntervalList.skipped_ticks:type_name -> qubic.archiver.archive.pb.SkippedTicksInterval + 9, // 4: qubic.archiver.archive.pb.QuorumTickData.quorum_tick_structure:type_name -> qubic.archiver.archive.pb.QuorumTickStructure + 32, // 5: qubic.archiver.archive.pb.QuorumTickData.quorum_diff_per_computor:type_name -> qubic.archiver.archive.pb.QuorumTickData.QuorumDiffPerComputorEntry + 12, // 6: qubic.archiver.archive.pb.GetQuorumTickDataResponse.quorum_tick_data:type_name -> qubic.archiver.archive.pb.QuorumTickData + 15, // 7: qubic.archiver.archive.pb.GetComputorsResponse.computors:type_name -> qubic.archiver.archive.pb.Computors + 3, // 8: qubic.archiver.archive.pb.TransferTransactionsPerTick.transactions:type_name -> qubic.archiver.archive.pb.Transaction + 18, // 9: qubic.archiver.archive.pb.GetIdentityInfoResponse.identity_info:type_name -> qubic.archiver.archive.pb.IdentityInfo + 33, // 10: qubic.archiver.archive.pb.GetLastProcessedTickResponse.last_processed_ticks_per_epoch:type_name -> qubic.archiver.archive.pb.GetLastProcessedTickResponse.LastProcessedTicksPerEpochEntry + 10, // 11: qubic.archiver.archive.pb.GetSkippedTicksResponse.skipped_ticks:type_name -> qubic.archiver.archive.pb.SkippedTicksInterval + 19, // 12: qubic.archiver.archive.pb.GetTransferTransactionsPerTickResponse.transfer_transactions_per_tick:type_name -> qubic.archiver.archive.pb.TransferTransactionsPerTick + 8, // 13: qubic.archiver.archive.pb.QuorumTickData.QuorumDiffPerComputorEntry.value:type_name -> qubic.archiver.archive.pb.QuorumDiff + 1, // 14: qubic.archiver.archive.pb.ArchiveService.GetTickData:input_type -> qubic.archiver.archive.pb.GetTickDataRequest + 6, // 15: qubic.archiver.archive.pb.ArchiveService.GetTickTransactions:input_type -> qubic.archiver.archive.pb.GetTickTransactionsRequest + 4, // 16: qubic.archiver.archive.pb.ArchiveService.GetTransaction:input_type -> qubic.archiver.archive.pb.GetTransactionRequest + 13, // 17: qubic.archiver.archive.pb.ArchiveService.GetQuorumTickData:input_type -> qubic.archiver.archive.pb.GetQuorumTickDataRequest + 16, // 18: qubic.archiver.archive.pb.ArchiveService.GetComputors:input_type -> qubic.archiver.archive.pb.GetComputorsRequest + 20, // 19: qubic.archiver.archive.pb.ArchiveService.GetIdentityInfo:input_type -> qubic.archiver.archive.pb.GetIdentityInfoRequest + 22, // 20: qubic.archiver.archive.pb.ArchiveService.GetLastProcessedTick:input_type -> qubic.archiver.archive.pb.GetLastProcessedTickRequest + 24, // 21: qubic.archiver.archive.pb.ArchiveService.SendRawTransaction:input_type -> qubic.archiver.archive.pb.SendRawTransactionRequest + 26, // 22: qubic.archiver.archive.pb.ArchiveService.GetSkippedTicks:input_type -> qubic.archiver.archive.pb.GetSkippedTicksRequest + 28, // 23: qubic.archiver.archive.pb.ArchiveService.GetTransferTransactionsPerTick:input_type -> qubic.archiver.archive.pb.GetTransferTransactionsPerTickRequest + 30, // 24: qubic.archiver.archive.pb.ArchiveService.GetQChainHash:input_type -> qubic.archiver.archive.pb.GetQChainHashRequest + 2, // 25: qubic.archiver.archive.pb.ArchiveService.GetTickData:output_type -> qubic.archiver.archive.pb.GetTickDataResponse + 7, // 26: qubic.archiver.archive.pb.ArchiveService.GetTickTransactions:output_type -> qubic.archiver.archive.pb.GetTickTransactionsResponse + 5, // 27: qubic.archiver.archive.pb.ArchiveService.GetTransaction:output_type -> qubic.archiver.archive.pb.GetTransactionResponse + 14, // 28: qubic.archiver.archive.pb.ArchiveService.GetQuorumTickData:output_type -> qubic.archiver.archive.pb.GetQuorumTickDataResponse + 17, // 29: qubic.archiver.archive.pb.ArchiveService.GetComputors:output_type -> qubic.archiver.archive.pb.GetComputorsResponse + 21, // 30: qubic.archiver.archive.pb.ArchiveService.GetIdentityInfo:output_type -> qubic.archiver.archive.pb.GetIdentityInfoResponse + 23, // 31: qubic.archiver.archive.pb.ArchiveService.GetLastProcessedTick:output_type -> qubic.archiver.archive.pb.GetLastProcessedTickResponse + 25, // 32: qubic.archiver.archive.pb.ArchiveService.SendRawTransaction:output_type -> qubic.archiver.archive.pb.SendRawTransactionResponse + 27, // 33: qubic.archiver.archive.pb.ArchiveService.GetSkippedTicks:output_type -> qubic.archiver.archive.pb.GetSkippedTicksResponse + 29, // 34: qubic.archiver.archive.pb.ArchiveService.GetTransferTransactionsPerTick:output_type -> qubic.archiver.archive.pb.GetTransferTransactionsPerTickResponse + 31, // 35: qubic.archiver.archive.pb.ArchiveService.GetQChainHash:output_type -> qubic.archiver.archive.pb.GetQChainHashResponse + 25, // [25:36] is the sub-list for method output_type + 14, // [14:25] is the sub-list for method input_type + 14, // [14:14] is the sub-list for extension type_name + 14, // [14:14] is the sub-list for extension extendee + 0, // [0:14] is the sub-list for field type_name } func init() { file_archive_proto_init() } @@ -2487,18 +2432,6 @@ func file_archive_proto_init() { } } file_archive_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Transactions); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_archive_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTickTransactionsRequest); i { case 0: return &v.state @@ -2510,7 +2443,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTickTransactionsResponse); i { case 0: return &v.state @@ -2522,7 +2455,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*QuorumDiff); i { case 0: return &v.state @@ -2534,7 +2467,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*QuorumTickStructure); i { case 0: return &v.state @@ -2546,7 +2479,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SkippedTicksInterval); i { case 0: return &v.state @@ -2558,7 +2491,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SkippedTicksIntervalList); i { case 0: return &v.state @@ -2570,7 +2503,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*QuorumTickData); i { case 0: return &v.state @@ -2582,7 +2515,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetQuorumTickDataRequest); i { case 0: return &v.state @@ -2594,7 +2527,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetQuorumTickDataResponse); i { case 0: return &v.state @@ -2606,7 +2539,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Computors); i { case 0: return &v.state @@ -2618,7 +2551,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetComputorsRequest); i { case 0: return &v.state @@ -2630,7 +2563,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetComputorsResponse); i { case 0: return &v.state @@ -2642,7 +2575,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*IdentityInfo); i { case 0: return &v.state @@ -2654,7 +2587,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TransferTransactionsPerTick); i { case 0: return &v.state @@ -2666,7 +2599,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetIdentityInfoRequest); i { case 0: return &v.state @@ -2678,7 +2611,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetIdentityInfoResponse); i { case 0: return &v.state @@ -2690,7 +2623,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetLastProcessedTickRequest); i { case 0: return &v.state @@ -2702,7 +2635,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetLastProcessedTickResponse); i { case 0: return &v.state @@ -2714,7 +2647,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SendRawTransactionRequest); i { case 0: return &v.state @@ -2726,7 +2659,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SendRawTransactionResponse); i { case 0: return &v.state @@ -2738,7 +2671,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSkippedTicksRequest); i { case 0: return &v.state @@ -2750,7 +2683,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSkippedTicksResponse); i { case 0: return &v.state @@ -2762,7 +2695,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTransferTransactionsPerTickRequest); i { case 0: return &v.state @@ -2774,7 +2707,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTransferTransactionsPerTickResponse); i { case 0: return &v.state @@ -2786,7 +2719,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetQChainHashRequest); i { case 0: return &v.state @@ -2798,7 +2731,7 @@ func file_archive_proto_init() { return nil } } - file_archive_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + file_archive_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetQChainHashResponse); i { case 0: return &v.state @@ -2817,7 +2750,7 @@ func file_archive_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_archive_proto_rawDesc, NumEnums: 0, - NumMessages: 35, + NumMessages: 34, NumExtensions: 0, NumServices: 1, }, diff --git a/protobuff/archive.proto b/protobuff/archive.proto index d081621..de7685d 100644 --- a/protobuff/archive.proto +++ b/protobuff/archive.proto @@ -44,10 +44,6 @@ message GetTransactionResponse{ Transaction transaction = 1; } -message Transactions { - repeated Transaction transactions = 1; -} - message GetTickTransactionsRequest { uint32 tick_number = 1; } @@ -128,7 +124,7 @@ message IdentityInfo { message TransferTransactionsPerTick { uint32 tick_number = 1; string identity = 2; - Transactions transactions = 3; + repeated Transaction transactions = 3; } message GetIdentityInfoRequest { diff --git a/rpc/rpc_server.go b/rpc/rpc_server.go index 48f392c..4648d08 100644 --- a/rpc/rpc_server.go +++ b/rpc/rpc_server.go @@ -63,7 +63,7 @@ func (s *Server) GetTickTransactions(ctx context.Context, req *protobuff.GetTick return nil, status.Errorf(codes.Internal, "getting tick transactions: %v", err) } - return &protobuff.GetTickTransactionsResponse{Transactions: txs.Transactions}, nil + return &protobuff.GetTickTransactionsResponse{Transactions: txs}, nil } func (s *Server) GetTransaction(ctx context.Context, req *protobuff.GetTransactionRequest) (*protobuff.GetTransactionResponse, error) { tx, err := s.store.GetTransaction(ctx, req.TxId) diff --git a/store/store.go b/store/store.go index 57317ce..e10d68c 100644 --- a/store/store.go +++ b/store/store.go @@ -132,11 +132,11 @@ func (s *PebbleStore) SetComputors(ctx context.Context, epoch uint32, computors return nil } -func (s *PebbleStore) SetTransactions(ctx context.Context, txs *protobuff.Transactions) error { - batch := s.db.NewBatchWithSize(len(txs.GetTransactions())) +func (s *PebbleStore) SetTransactions(ctx context.Context, txs []*protobuff.Transaction) error { + batch := s.db.NewBatchWithSize(len(txs)) defer batch.Close() - for _, tx := range txs.GetTransactions() { + for _, tx := range txs { key, err := tickTxKey(tx.TxId) if err != nil { return errors.Wrapf(err, "creating tx key for id: %s", tx.TxId) @@ -160,7 +160,7 @@ func (s *PebbleStore) SetTransactions(ctx context.Context, txs *protobuff.Transa return nil } -func (s *PebbleStore) GetTickTransactions(ctx context.Context, tickNumber uint64) (*protobuff.Transactions, error) { +func (s *PebbleStore) GetTickTransactions(ctx context.Context, tickNumber uint64) ([]*protobuff.Transaction, error) { td, err := s.GetTickData(ctx, tickNumber) if err != nil { if errors.Is(err, ErrNotFound) { @@ -184,7 +184,7 @@ func (s *PebbleStore) GetTickTransactions(ctx context.Context, tickNumber uint64 txs = append(txs, tx) } - return &protobuff.Transactions{Transactions: txs}, nil + return txs, nil } func (s *PebbleStore) GetTransaction(ctx context.Context, txID string) (*protobuff.Transaction, error) { diff --git a/store/store_test.go b/store/store_test.go index 33fe2ca..6026ed0 100644 --- a/store/store_test.go +++ b/store/store_test.go @@ -195,31 +195,28 @@ func TestPebbleStore_TickTransactions(t *testing.T) { logger, _ := zap.NewDevelopment() store := NewPebbleStore(db, logger) - transactions := &pb.Transactions{ - Transactions: []*pb.Transaction{ - { - SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - Amount: 100, - TickNumber: 101, - InputType: 1, - InputSize: 256, - InputHex: "input1", - SignatureHex: "signature1", - TxId: "ff01", - }, - { - SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - Amount: 100, - TickNumber: 101, - InputType: 1, - InputSize: 256, - InputHex: "input1", - SignatureHex: "signature2", - TxId: "cd01", - }, - // Add more transactions as needed + transactions := []*pb.Transaction{ + { + SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + Amount: 100, + TickNumber: 101, + InputType: 1, + InputSize: 256, + InputHex: "input1", + SignatureHex: "signature1", + TxId: "ff01", + }, + { + SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + Amount: 100, + TickNumber: 101, + InputType: 1, + InputSize: 256, + InputHex: "input1", + SignatureHex: "signature2", + TxId: "cd01", }, } @@ -247,9 +244,9 @@ func TestPebbleStore_TickTransactions(t *testing.T) { require.NotNil(t, retrievedTransactions) // Validate the retrieved transactions - require.Len(t, retrievedTransactions.Transactions, len(transactions.Transactions)) - for i, tx := range transactions.Transactions { - retrievedTx := retrievedTransactions.Transactions[i] + require.Len(t, retrievedTransactions, len(transactions)) + for i, tx := range transactions { + retrievedTx := retrievedTransactions[i] require.Equal(t, tx.SourceId, retrievedTx.SourceId) // Continue with other fields... } @@ -286,12 +283,7 @@ func TestPebbleStore_GetTransaction(t *testing.T) { SignatureHex: "signature_target", TxId: "cd01", } - transactions := &pb.Transactions{ - Transactions: []*pb.Transaction{ - targetTransaction, - // Additional transactions as needed - }, - } + transactions := []*pb.Transaction{targetTransaction} // Use SetTransactions to store the transactions err = store.SetTransactions(ctx, transactions) @@ -441,30 +433,28 @@ func TestPebbleStore_TransferTransactions(t *testing.T) { forTickOne := pb.TransferTransactionsPerTick{ TickNumber: 12, Identity: idOne, - Transactions: &pb.Transactions{ - Transactions: []*pb.Transaction{ - { - SourceId: "aaaaa", - DestId: "bbbbb", - Amount: 15, - TickNumber: 12, - InputType: 87, - InputSize: 122, - InputHex: "dddd", - SignatureHex: "ffff", - TxId: "eeee", - }, - { - SourceId: "bbbbb", - DestId: "aaaaa", - Amount: 25, - TickNumber: 12, - InputType: 65, - InputSize: 24, - InputHex: "ffff", - SignatureHex: "dddd", - TxId: "cccc", - }, + Transactions: []*pb.Transaction{ + { + SourceId: "aaaaa", + DestId: "bbbbb", + Amount: 15, + TickNumber: 12, + InputType: 87, + InputSize: 122, + InputHex: "dddd", + SignatureHex: "ffff", + TxId: "eeee", + }, + { + SourceId: "bbbbb", + DestId: "aaaaa", + Amount: 25, + TickNumber: 12, + InputType: 65, + InputSize: 24, + InputHex: "ffff", + SignatureHex: "dddd", + TxId: "cccc", }, }, } @@ -472,30 +462,28 @@ func TestPebbleStore_TransferTransactions(t *testing.T) { forTickTwo := pb.TransferTransactionsPerTick{ TickNumber: 15, Identity: idTwo, - Transactions: &pb.Transactions{ - Transactions: []*pb.Transaction{ - { - SourceId: "aaaaa", - DestId: "bbbbb", - Amount: 15, - TickNumber: 15, - InputType: 87, - InputSize: 122, - InputHex: "dddd", - SignatureHex: "ffff", - TxId: "eeee", - }, - { - SourceId: "bbbbb", - DestId: "aaaaa", - Amount: 25, - TickNumber: 15, - InputType: 65, - InputSize: 24, - InputHex: "ffff", - SignatureHex: "dddd", - TxId: "cccc", - }, + Transactions: []*pb.Transaction{ + { + SourceId: "aaaaa", + DestId: "bbbbb", + Amount: 15, + TickNumber: 15, + InputType: 87, + InputSize: 122, + InputHex: "dddd", + SignatureHex: "ffff", + TxId: "eeee", + }, + { + SourceId: "bbbbb", + DestId: "aaaaa", + Amount: 25, + TickNumber: 15, + InputType: 65, + InputSize: 24, + InputHex: "ffff", + SignatureHex: "dddd", + TxId: "cccc", }, }, } @@ -508,43 +496,42 @@ func TestPebbleStore_TransferTransactions(t *testing.T) { got, err := store.GetTransferTransactions(ctx, idOne, 12, 12) require.NoError(t, err) - diff := cmp.Diff([]*pb.TransferTransactionsPerTick{&forTickOne}, got, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{}, pb.Transactions{})) + diff := cmp.Diff([]*pb.TransferTransactionsPerTick{&forTickOne}, got, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{})) require.Equal(t, "", diff, "comparing first TransferTransactionsPerTick for idOne, forTickOne") got, err = store.GetTransferTransactions(ctx, idOne, 13, 13) require.NoError(t, err) - diff = cmp.Diff([]*pb.TransferTransactionsPerTick{&forTickOne}, got, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{}, pb.Transactions{})) + diff = cmp.Diff([]*pb.TransferTransactionsPerTick{&forTickOne}, got, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{})) require.Equal(t, "", diff, "comparing second TransferTransactionsPerTick for idOne, forTickOne") err = store.PutTransferTransactionsPerTick(ctx, idTwo, 15, &forTickTwo) require.NoError(t, err) got, err = store.GetTransferTransactions(ctx, idTwo, 15, 15) require.NoError(t, err) - diff = cmp.Diff([]*pb.TransferTransactionsPerTick{&forTickTwo}, got, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{}, pb.Transactions{})) + diff = cmp.Diff([]*pb.TransferTransactionsPerTick{&forTickTwo}, got, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{})) require.Equal(t, "", diff, "comparing TransferTransactionsPerTick for idTwo, forTickTwo") - + perIdentityTx, err := store.GetTransferTransactions(ctx, idOne, 12, 13) require.NoError(t, err) require.Equal(t, 2, len(perIdentityTx)) expected := []*pb.TransferTransactionsPerTick{&forTickOne, &forTickOne} require.NoError(t, err) - diff = cmp.Diff(expected, perIdentityTx, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{}, pb.Transactions{})) + diff = cmp.Diff(expected, perIdentityTx, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{})) require.Equal(t, "", diff, "comparing perIdentityTx") // not existing identity means no transfers perIdentityTx, err = store.GetTransferTransactions(ctx, idThree, 1, 20) require.NoError(t, err) - diff = cmp.Diff([]*pb.TransferTransactionsPerTick{}, perIdentityTx, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{}, pb.Transactions{})) + diff = cmp.Diff([]*pb.TransferTransactionsPerTick{}, perIdentityTx, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{})) require.Equal(t, "", diff, "comparison of perIdentityTx for idThree") // not existing tick means no transfers perTickTx, err := store.GetTransferTransactions(ctx, idOne, 14, 14) require.NoError(t, err) - diff = cmp.Diff([]*pb.TransferTransactionsPerTick{}, perTickTx, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{}, pb.Transactions{})) + diff = cmp.Diff([]*pb.TransferTransactionsPerTick{}, perTickTx, cmpopts.IgnoreUnexported(pb.TransferTransactionsPerTick{}, pb.Transaction{})) require.Equal(t, "", diff, "comparison of perTickTx for idOne and tick 14") } - func TestPebbleStore_QChainHash(t *testing.T) { ctx := context.Background() diff --git a/validator/tx/models.go b/validator/tx/models.go index 020806c..22eb5f8 100644 --- a/validator/tx/models.go +++ b/validator/tx/models.go @@ -7,19 +7,17 @@ import ( "github.com/qubic/go-node-connector/types" ) -func qubicToProto(txs types.Transactions) (*protobuff.Transactions, error) { - protoTxs := protobuff.Transactions{ - Transactions: make([]*protobuff.Transaction, len(txs)), - } +func qubicToProto(txs types.Transactions) ([]*protobuff.Transaction, error) { + protoTxs := make([]*protobuff.Transaction, len(txs)) for i, tx := range txs { txProto, err := txToProto(tx) if err != nil { return nil, errors.Wrapf(err, "converting tx to proto") } - protoTxs.Transactions[i] = txProto + protoTxs[i] = txProto } - return &protoTxs, nil + return protoTxs, nil } func txToProto(tx types.Transaction) (*protobuff.Transaction, error) { diff --git a/validator/tx/models_test.go b/validator/tx/models_test.go index 4429947..49f438e 100644 --- a/validator/tx/models_test.go +++ b/validator/tx/models_test.go @@ -55,30 +55,28 @@ func TestQubicToProto(t *testing.T) { t.Fatalf("idTwo.FromPubKey() unexpected error: %v", err) } - expectedProtoTxs := &protobuff.Transactions{ - Transactions: []*protobuff.Transaction{ - &protobuff.Transaction{ - SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - Amount: 100, - TickNumber: 20, - InputType: 0, - InputSize: 100, - InputHex: hex.EncodeToString(qubicTransactions[0].Input[:]), - SignatureHex: "01020304050607080910010203040506070809100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - TxId: idOne.String(), - }, - &protobuff.Transaction{ - SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - Amount: 15, - TickNumber: 20, - InputType: 0, - InputSize: 120, - InputHex: hex.EncodeToString(qubicTransactions[1].Input[:]), - SignatureHex: "01020304ff0607080910010203040506070809100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - TxId: idTwo.String(), - }, + expectedProtoTxs := []*protobuff.Transaction{ + { + SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + Amount: 100, + TickNumber: 20, + InputType: 0, + InputSize: 100, + InputHex: hex.EncodeToString(qubicTransactions[0].Input[:]), + SignatureHex: "01020304050607080910010203040506070809100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + TxId: idOne.String(), + }, + { + SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + Amount: 15, + TickNumber: 20, + InputType: 0, + InputSize: 120, + InputHex: hex.EncodeToString(qubicTransactions[1].Input[:]), + SignatureHex: "01020304ff0607080910010203040506070809100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + TxId: idTwo.String(), }, } @@ -86,7 +84,7 @@ func TestQubicToProto(t *testing.T) { if err != nil { t.Fatalf("qubicToProto() unexpected error: %v", err) } - if diff := cmp.Diff(got, expectedProtoTxs, cmpopts.IgnoreUnexported(protobuff.Transactions{}, protobuff.Transaction{})); diff != "" { + if diff := cmp.Diff(got, expectedProtoTxs, cmpopts.IgnoreUnexported(protobuff.Transaction{})); diff != "" { t.Fatalf("qubicToProto() mismatch (-got +want):\n%s", diff) } } diff --git a/validator/tx/validator.go b/validator/tx/validator.go index 8049d8c..e79ba15 100644 --- a/validator/tx/validator.go +++ b/validator/tx/validator.go @@ -140,7 +140,7 @@ func storeTransferTransactions(ctx context.Context, store *store.PebbleStore, ti return nil } -func removeNonTransferTransactionsAndConvert(transactions []types.Transaction) (*protobuff.Transactions, error) { +func removeNonTransferTransactionsAndConvert(transactions []types.Transaction) ([]*protobuff.Transaction, error) { transferTransactions := make([]*protobuff.Transaction, 0) for _, tx := range transactions { if tx.Amount == 0 { @@ -155,28 +155,24 @@ func removeNonTransferTransactionsAndConvert(transactions []types.Transaction) ( transferTransactions = append(transferTransactions, protoTx) } - return &protobuff.Transactions{Transactions: transferTransactions}, nil + return transferTransactions, nil } -func createTransferTransactionsIdentityMap(ctx context.Context, txs *protobuff.Transactions) (map[string]*protobuff.Transactions, error) { - txsPerIdentity := make(map[string]*protobuff.Transactions) - for _, tx := range txs.Transactions { +func createTransferTransactionsIdentityMap(ctx context.Context, txs []*protobuff.Transaction) (map[string][]*protobuff.Transaction, error) { + txsPerIdentity := make(map[string][]*protobuff.Transaction) + for _, tx := range txs { _, ok := txsPerIdentity[tx.DestId] if !ok { - txsPerIdentity[tx.DestId] = &protobuff.Transactions{ - Transactions: make([]*protobuff.Transaction, 0), - } + txsPerIdentity[tx.DestId] = make([]*protobuff.Transaction, 0) } _, ok = txsPerIdentity[tx.SourceId] if !ok { - txsPerIdentity[tx.SourceId] = &protobuff.Transactions{ - Transactions: make([]*protobuff.Transaction, 0), - } + txsPerIdentity[tx.SourceId] = make([]*protobuff.Transaction, 0) } - txsPerIdentity[tx.DestId].Transactions = append(txsPerIdentity[tx.DestId].Transactions, tx) - txsPerIdentity[tx.SourceId].Transactions = append(txsPerIdentity[tx.SourceId].Transactions, tx) + txsPerIdentity[tx.DestId] = append(txsPerIdentity[tx.DestId], tx) + txsPerIdentity[tx.SourceId] = append(txsPerIdentity[tx.SourceId], tx) } return txsPerIdentity, nil diff --git a/validator/tx/validator_test.go b/validator/tx/validator_test.go index 0731b75..6e8e634 100644 --- a/validator/tx/validator_test.go +++ b/validator/tx/validator_test.go @@ -16,8 +16,27 @@ import ( ) func Test_CreateTransferTransactionsIdentityMap(t *testing.T) { - txs := protobuff.Transactions{ - Transactions: []*protobuff.Transaction{ + txs := []*protobuff.Transaction{ + { + SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + }, + { + SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + }, + { + SourceId: "AXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + DestId: "BJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + }, + { + SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + DestId: "ZXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + }, + } + + expected := map[string][]*protobuff.Transaction{ + "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB": { { SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", @@ -26,75 +45,44 @@ func Test_CreateTransferTransactionsIdentityMap(t *testing.T) { SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", }, - { - SourceId: "AXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - DestId: "BJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - }, { SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", DestId: "ZXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", }, }, - } - - expected := map[string]*protobuff.Transactions{ - "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB": { - Transactions: []*protobuff.Transaction{ - { - SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - }, - { - SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - }, - { - SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - DestId: "ZXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - }, - }, - }, "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB": { - Transactions: []*protobuff.Transaction{ - { - SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - }, - { - SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - }, + { + SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + }, + { + SourceId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + DestId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", }, }, "AXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB": { - Transactions: []*protobuff.Transaction{ - { - SourceId: "AXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - DestId: "BJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - }, + { + SourceId: "AXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + DestId: "BJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", }, }, "BJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB": { - Transactions: []*protobuff.Transaction{ - { - SourceId: "AXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - DestId: "BJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - }, + { + SourceId: "AXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", + DestId: "BJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", }, }, "ZXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB": { - Transactions: []*protobuff.Transaction{ - { - SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - DestId: "ZXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - }, + { + SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", + DestId: "ZXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", }, }, } - got, err := createTransferTransactionsIdentityMap(context.Background(), &txs) + got, err := createTransferTransactionsIdentityMap(context.Background(), txs) require.NoError(t, err) - diff := cmp.Diff(got, expected, cmpopts.IgnoreUnexported(protobuff.Transactions{}, protobuff.Transaction{})) + diff := cmp.Diff(got, expected, cmpopts.IgnoreUnexported(protobuff.Transaction{})) require.Empty(t, diff) } @@ -156,7 +144,7 @@ func TestStore(t *testing.T) { expectedFirstTickFirstID := &protobuff.TransferTransactionsPerTick{ TickNumber: 1, Identity: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - Transactions: &protobuff.Transactions{Transactions: []*protobuff.Transaction{ + Transactions: []*protobuff.Transaction{ { SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", @@ -169,13 +157,13 @@ func TestStore(t *testing.T) { Amount: 20, SignatureHex: "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", }, - }}, + }, } expectedFirstTickSecondID := &protobuff.TransferTransactionsPerTick{ TickNumber: 1, Identity: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - Transactions: &protobuff.Transactions{Transactions: []*protobuff.Transaction{ + Transactions: []*protobuff.Transaction{ { SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", @@ -188,17 +176,17 @@ func TestStore(t *testing.T) { Amount: 20, SignatureHex: "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", }, - }}, + }, } got, err := s.GetTransferTransactions(ctx, "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", 1, 1) require.NoError(t, err) - diff := cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedFirstTickFirstID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transactions{}, protobuff.Transaction{})) + diff := cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedFirstTickFirstID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transaction{})) require.Empty(t, diff) got, err = s.GetTransferTransactions(ctx, "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", 1, 1) require.NoError(t, err) - diff = cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedFirstTickSecondID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transactions{}, protobuff.Transaction{})) + diff = cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedFirstTickSecondID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transaction{})) require.Empty(t, diff) err = Store(ctx, s, 2, secondTick) @@ -207,7 +195,7 @@ func TestStore(t *testing.T) { expectedSecondTickFirstID := &protobuff.TransferTransactionsPerTick{ TickNumber: 2, Identity: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", - Transactions: &protobuff.Transactions{Transactions: []*protobuff.Transaction{ + Transactions: []*protobuff.Transaction{ { SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", @@ -220,13 +208,13 @@ func TestStore(t *testing.T) { Amount: 30, SignatureHex: "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", }, - }}, + }, } expectedSecondTickSecondID := &protobuff.TransferTransactionsPerTick{ TickNumber: 2, Identity: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", - Transactions: &protobuff.Transactions{Transactions: []*protobuff.Transaction{ + Transactions: []*protobuff.Transaction{ { SourceId: "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", DestId: "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", @@ -239,29 +227,29 @@ func TestStore(t *testing.T) { Amount: 30, SignatureHex: "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", }, - }}, + }, } got, err = s.GetTransferTransactions(ctx, "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", 2, 2) require.NoError(t, err) - diff = cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedSecondTickFirstID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transactions{}, protobuff.Transaction{})) + diff = cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedSecondTickFirstID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transaction{})) require.Empty(t, diff) got, err = s.GetTransferTransactions(ctx, "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", 2, 2) require.NoError(t, err) - diff = cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedSecondTickSecondID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transactions{}, protobuff.Transaction{})) + diff = cmp.Diff(got, []*protobuff.TransferTransactionsPerTick{expectedSecondTickSecondID}, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transaction{})) require.Empty(t, diff) expectedCombined := []*protobuff.TransferTransactionsPerTick{expectedFirstTickFirstID, expectedSecondTickFirstID} gotCombined, err := s.GetTransferTransactions(ctx, "QJRRSSKMJRDKUDTYVNYGAMQPULKAMILQQYOWBEXUDEUWQUMNGDHQYLOAJMEB", 1, 2) require.NoError(t, err) - diff = cmp.Diff(gotCombined, expectedCombined, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transactions{}, protobuff.Transaction{})) + diff = cmp.Diff(gotCombined, expectedCombined, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transaction{})) require.Empty(t, diff) expectedCombined = []*protobuff.TransferTransactionsPerTick{expectedFirstTickSecondID, expectedSecondTickSecondID} gotCombined, err = s.GetTransferTransactions(ctx, "IXTSDANOXIVIWGNDCNZVWSAVAEPBGLGSQTLSVHHBWEGKSEKPRQGWIJJCTUZB", 1, 2) require.NoError(t, err) - diff = cmp.Diff(gotCombined, expectedCombined, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transactions{}, protobuff.Transaction{})) + diff = cmp.Diff(gotCombined, expectedCombined, cmpopts.IgnoreFields(protobuff.Transaction{}, "TxId"), cmpopts.IgnoreUnexported(protobuff.TransferTransactionsPerTick{}, protobuff.Transaction{})) require.Empty(t, diff) }