// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.1 // protoc v3.21.8 // source: Statement.proto package statement import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type Contracts struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ContractUid string `protobuf:"bytes,1,opt,name=contractUid,json=contract_uid,proto3" json:"contractUid,omitempty"` ArtistUid string `protobuf:"bytes,2,opt,name=artistUid,json=artist_uid,proto3" json:"artistUid,omitempty"` ArtworkUid string `protobuf:"bytes,3,opt,name=artworkUid,json=artwork_uid,proto3" json:"artworkUid,omitempty"` ContractId string `protobuf:"bytes,4,opt,name=contractId,json=contract_id,proto3" json:"contractId,omitempty"` TransactionId string `protobuf:"bytes,5,opt,name=transactionId,json=transaction_id,proto3" json:"transactionId,omitempty"` Type int32 `protobuf:"varint,6,opt,name=type,proto3" json:"type,omitempty"` ViewUrl string `protobuf:"bytes,7,opt,name=viewUrl,json=view_url,proto3" json:"viewUrl,omitempty"` DownloadUrl string `protobuf:"bytes,8,opt,name=downloadUrl,json=download_url,proto3" json:"downloadUrl,omitempty"` State int32 `protobuf:"varint,9,opt,name=state,proto3" json:"state,omitempty"` Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status,omitempty"` ExpirationTime string `protobuf:"bytes,11,opt,name=expirationTime,json=expiration_time,proto3" json:"expirationTime,omitempty"` LockTime string `protobuf:"bytes,12,opt,name=lockTime,json=lock_time,proto3" json:"lockTime,omitempty"` SignTime string `protobuf:"bytes,13,opt,name=signTime,json=sign_time,proto3" json:"signTime,omitempty"` BatchTime string `protobuf:"bytes,14,opt,name=batchTime,json=batch_time,proto3" json:"batchTime,omitempty"` BatchUid string `protobuf:"bytes,15,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` } func (x *Contracts) Reset() { *x = Contracts{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Contracts) String() string { return protoimpl.X.MessageStringOf(x) } func (*Contracts) ProtoMessage() {} func (x *Contracts) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Contracts.ProtoReflect.Descriptor instead. func (*Contracts) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{0} } func (x *Contracts) GetContractUid() string { if x != nil { return x.ContractUid } return "" } func (x *Contracts) GetArtistUid() string { if x != nil { return x.ArtistUid } return "" } func (x *Contracts) GetArtworkUid() string { if x != nil { return x.ArtworkUid } return "" } func (x *Contracts) GetContractId() string { if x != nil { return x.ContractId } return "" } func (x *Contracts) GetTransactionId() string { if x != nil { return x.TransactionId } return "" } func (x *Contracts) GetType() int32 { if x != nil { return x.Type } return 0 } func (x *Contracts) GetViewUrl() string { if x != nil { return x.ViewUrl } return "" } func (x *Contracts) GetDownloadUrl() string { if x != nil { return x.DownloadUrl } return "" } func (x *Contracts) GetState() int32 { if x != nil { return x.State } return 0 } func (x *Contracts) GetStatus() int32 { if x != nil { return x.Status } return 0 } func (x *Contracts) GetExpirationTime() string { if x != nil { return x.ExpirationTime } return "" } func (x *Contracts) GetLockTime() string { if x != nil { return x.LockTime } return "" } func (x *Contracts) GetSignTime() string { if x != nil { return x.SignTime } return "" } func (x *Contracts) GetBatchTime() string { if x != nil { return x.BatchTime } return "" } func (x *Contracts) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } type ArtworkTxDetail struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchUid string `protobuf:"bytes,1,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` TfNum string `protobuf:"bytes,2,opt,name=tfNum,json=TfNum,proto3" json:"tfNum,omitempty"` ArtworkName string `protobuf:"bytes,3,opt,name=artworkName,json=artwork_name,proto3" json:"artworkName,omitempty"` Ruler float32 `protobuf:"fixed32,4,opt,name=ruler,proto3" json:"ruler,omitempty"` MinPrice float32 `protobuf:"fixed32,5,opt,name=minPrice,json=min_price,proto3" json:"minPrice,omitempty"` GuaranteePrice float32 `protobuf:"fixed32,6,opt,name=guaranteePrice,json=guarantee_price,proto3" json:"guaranteePrice,omitempty"` } func (x *ArtworkTxDetail) Reset() { *x = ArtworkTxDetail{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ArtworkTxDetail) String() string { return protoimpl.X.MessageStringOf(x) } func (*ArtworkTxDetail) ProtoMessage() {} func (x *ArtworkTxDetail) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ArtworkTxDetail.ProtoReflect.Descriptor instead. func (*ArtworkTxDetail) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{1} } func (x *ArtworkTxDetail) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } func (x *ArtworkTxDetail) GetTfNum() string { if x != nil { return x.TfNum } return "" } func (x *ArtworkTxDetail) GetArtworkName() string { if x != nil { return x.ArtworkName } return "" } func (x *ArtworkTxDetail) GetRuler() float32 { if x != nil { return x.Ruler } return 0 } func (x *ArtworkTxDetail) GetMinPrice() float32 { if x != nil { return x.MinPrice } return 0 } func (x *ArtworkTxDetail) GetGuaranteePrice() float32 { if x != nil { return x.GuaranteePrice } return 0 } type ArtworkSoldTxDetail struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchUid string `protobuf:"bytes,1,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` TfNum string `protobuf:"bytes,2,opt,name=tfNum,json=TfNum,proto3" json:"tfNum,omitempty"` ArtworkName string `protobuf:"bytes,3,opt,name=artworkName,json=artwork_name,proto3" json:"artworkName,omitempty"` Ruler float32 `protobuf:"fixed32,4,opt,name=ruler,proto3" json:"ruler,omitempty"` SaleNo string `protobuf:"bytes,5,opt,name=saleNo,json=sale_no,proto3" json:"saleNo,omitempty"` CompleteDate string `protobuf:"bytes,6,opt,name=completeDate,json=complete_date,proto3" json:"completeDate,omitempty"` MinPrice float32 `protobuf:"fixed32,7,opt,name=minPrice,json=min_price,proto3" json:"minPrice,omitempty"` SalePrice float32 `protobuf:"fixed32,8,opt,name=salePrice,json=sale_price,proto3" json:"salePrice,omitempty"` GuaranteePrice float32 `protobuf:"fixed32,9,opt,name=guaranteePrice,json=guarantee_price,proto3" json:"guaranteePrice,omitempty"` } func (x *ArtworkSoldTxDetail) Reset() { *x = ArtworkSoldTxDetail{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ArtworkSoldTxDetail) String() string { return protoimpl.X.MessageStringOf(x) } func (*ArtworkSoldTxDetail) ProtoMessage() {} func (x *ArtworkSoldTxDetail) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ArtworkSoldTxDetail.ProtoReflect.Descriptor instead. func (*ArtworkSoldTxDetail) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{2} } func (x *ArtworkSoldTxDetail) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } func (x *ArtworkSoldTxDetail) GetTfNum() string { if x != nil { return x.TfNum } return "" } func (x *ArtworkSoldTxDetail) GetArtworkName() string { if x != nil { return x.ArtworkName } return "" } func (x *ArtworkSoldTxDetail) GetRuler() float32 { if x != nil { return x.Ruler } return 0 } func (x *ArtworkSoldTxDetail) GetSaleNo() string { if x != nil { return x.SaleNo } return "" } func (x *ArtworkSoldTxDetail) GetCompleteDate() string { if x != nil { return x.CompleteDate } return "" } func (x *ArtworkSoldTxDetail) GetMinPrice() float32 { if x != nil { return x.MinPrice } return 0 } func (x *ArtworkSoldTxDetail) GetSalePrice() float32 { if x != nil { return x.SalePrice } return 0 } func (x *ArtworkSoldTxDetail) GetGuaranteePrice() float32 { if x != nil { return x.GuaranteePrice } return 0 } type ArtworkCopyDetail struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchUid string `protobuf:"bytes,1,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` TfNum string `protobuf:"bytes,2,opt,name=tfNum,json=TfNum,proto3" json:"tfNum,omitempty"` ArtworkName string `protobuf:"bytes,3,opt,name=artworkName,json=artwork_name,proto3" json:"artworkName,omitempty"` Ruler float32 `protobuf:"fixed32,4,opt,name=ruler,proto3" json:"ruler,omitempty"` MinPrice float32 `protobuf:"fixed32,5,opt,name=minPrice,json=min_price,proto3" json:"minPrice,omitempty"` GuaranteePrice float32 `protobuf:"fixed32,6,opt,name=guaranteePrice,json=guarantee_price,proto3" json:"guaranteePrice,omitempty"` } func (x *ArtworkCopyDetail) Reset() { *x = ArtworkCopyDetail{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ArtworkCopyDetail) String() string { return protoimpl.X.MessageStringOf(x) } func (*ArtworkCopyDetail) ProtoMessage() {} func (x *ArtworkCopyDetail) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ArtworkCopyDetail.ProtoReflect.Descriptor instead. func (*ArtworkCopyDetail) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{3} } func (x *ArtworkCopyDetail) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } func (x *ArtworkCopyDetail) GetTfNum() string { if x != nil { return x.TfNum } return "" } func (x *ArtworkCopyDetail) GetArtworkName() string { if x != nil { return x.ArtworkName } return "" } func (x *ArtworkCopyDetail) GetRuler() float32 { if x != nil { return x.Ruler } return 0 } func (x *ArtworkCopyDetail) GetMinPrice() float32 { if x != nil { return x.MinPrice } return 0 } func (x *ArtworkCopyDetail) GetGuaranteePrice() float32 { if x != nil { return x.GuaranteePrice } return 0 } type ArtworkSoldCopyDetail struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchUid string `protobuf:"bytes,1,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` TfNum string `protobuf:"bytes,2,opt,name=tfNum,json=TfNum,proto3" json:"tfNum,omitempty"` ArtworkName string `protobuf:"bytes,3,opt,name=artworkName,json=artwork_name,proto3" json:"artworkName,omitempty"` Ruler float32 `protobuf:"fixed32,4,opt,name=ruler,proto3" json:"ruler,omitempty"` SaleNo string `protobuf:"bytes,5,opt,name=saleNo,json=sale_no,proto3" json:"saleNo,omitempty"` CompleteDate string `protobuf:"bytes,6,opt,name=completeDate,json=complete_date,proto3" json:"completeDate,omitempty"` MinPrice float32 `protobuf:"fixed32,7,opt,name=minPrice,json=min_price,proto3" json:"minPrice,omitempty"` SalePrice float32 `protobuf:"fixed32,8,opt,name=salePrice,json=sale_price,proto3" json:"salePrice,omitempty"` GuaranteePrice float32 `protobuf:"fixed32,9,opt,name=guaranteePrice,json=guarantee_price,proto3" json:"guaranteePrice,omitempty"` } func (x *ArtworkSoldCopyDetail) Reset() { *x = ArtworkSoldCopyDetail{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ArtworkSoldCopyDetail) String() string { return protoimpl.X.MessageStringOf(x) } func (*ArtworkSoldCopyDetail) ProtoMessage() {} func (x *ArtworkSoldCopyDetail) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ArtworkSoldCopyDetail.ProtoReflect.Descriptor instead. func (*ArtworkSoldCopyDetail) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{4} } func (x *ArtworkSoldCopyDetail) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } func (x *ArtworkSoldCopyDetail) GetTfNum() string { if x != nil { return x.TfNum } return "" } func (x *ArtworkSoldCopyDetail) GetArtworkName() string { if x != nil { return x.ArtworkName } return "" } func (x *ArtworkSoldCopyDetail) GetRuler() float32 { if x != nil { return x.Ruler } return 0 } func (x *ArtworkSoldCopyDetail) GetSaleNo() string { if x != nil { return x.SaleNo } return "" } func (x *ArtworkSoldCopyDetail) GetCompleteDate() string { if x != nil { return x.CompleteDate } return "" } func (x *ArtworkSoldCopyDetail) GetMinPrice() float32 { if x != nil { return x.MinPrice } return 0 } func (x *ArtworkSoldCopyDetail) GetSalePrice() float32 { if x != nil { return x.SalePrice } return 0 } func (x *ArtworkSoldCopyDetail) GetGuaranteePrice() float32 { if x != nil { return x.GuaranteePrice } return 0 } type ExcelOneInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistUid string `protobuf:"bytes,1,opt,name=artistUid,json=artist_uid,proto3" json:"artistUid,omitempty"` BatchTime string `protobuf:"bytes,2,opt,name=batchTime,json=batch_time,proto3" json:"batchTime,omitempty"` ArtistName string `protobuf:"bytes,3,opt,name=artistName,json=artist_uid,proto3" json:"artistName,omitempty"` TfNum string `protobuf:"bytes,4,opt,name=tfNum,json=tf_num,proto3" json:"tfNum,omitempty"` ArtworkName string `protobuf:"bytes,5,opt,name=artworkName,json=artwork_name,proto3" json:"artworkName,omitempty"` Ruler float32 `protobuf:"fixed32,6,opt,name=ruler,proto3" json:"ruler,omitempty"` MinPrice float32 `protobuf:"fixed32,7,opt,name=minPrice,json=min_price,proto3" json:"minPrice,omitempty"` GuaranteePrice float32 `protobuf:"fixed32,8,opt,name=guaranteePrice,json=guarantee_price,proto3" json:"guaranteePrice,omitempty"` } func (x *ExcelOneInfo) Reset() { *x = ExcelOneInfo{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ExcelOneInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*ExcelOneInfo) ProtoMessage() {} func (x *ExcelOneInfo) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ExcelOneInfo.ProtoReflect.Descriptor instead. func (*ExcelOneInfo) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{5} } func (x *ExcelOneInfo) GetArtistUid() string { if x != nil { return x.ArtistUid } return "" } func (x *ExcelOneInfo) GetBatchTime() string { if x != nil { return x.BatchTime } return "" } func (x *ExcelOneInfo) GetArtistName() string { if x != nil { return x.ArtistName } return "" } func (x *ExcelOneInfo) GetTfNum() string { if x != nil { return x.TfNum } return "" } func (x *ExcelOneInfo) GetArtworkName() string { if x != nil { return x.ArtworkName } return "" } func (x *ExcelOneInfo) GetRuler() float32 { if x != nil { return x.Ruler } return 0 } func (x *ExcelOneInfo) GetMinPrice() float32 { if x != nil { return x.MinPrice } return 0 } func (x *ExcelOneInfo) GetGuaranteePrice() float32 { if x != nil { return x.GuaranteePrice } return 0 } type ExcelTwoInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistUid string `protobuf:"bytes,1,opt,name=artistUid,json=artist_uid,proto3" json:"artistUid,omitempty"` BatchTime string `protobuf:"bytes,2,opt,name=batchTime,json=batch_time,proto3" json:"batchTime,omitempty"` ArtistName string `protobuf:"bytes,3,opt,name=artistName,json=artist_uid,proto3" json:"artistName,omitempty"` TfNum string `protobuf:"bytes,4,opt,name=tfNum,json=tf_num,proto3" json:"tfNum,omitempty"` ArtworkName string `protobuf:"bytes,5,opt,name=artworkName,json=artwork_name,proto3" json:"artworkName,omitempty"` Ruler float32 `protobuf:"fixed32,6,opt,name=ruler,proto3" json:"ruler,omitempty"` SaleNo string `protobuf:"bytes,7,opt,name=saleNo,proto3" json:"saleNo,omitempty"` CompleteDate string `protobuf:"bytes,8,opt,name=completeDate,json=complete_date,proto3" json:"completeDate,omitempty"` SalePrice float32 `protobuf:"fixed32,9,opt,name=salePrice,proto3" json:"salePrice,omitempty"` } func (x *ExcelTwoInfo) Reset() { *x = ExcelTwoInfo{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ExcelTwoInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*ExcelTwoInfo) ProtoMessage() {} func (x *ExcelTwoInfo) ProtoReflect() protoreflect.Message { mi := &file_Statement_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 ExcelTwoInfo.ProtoReflect.Descriptor instead. func (*ExcelTwoInfo) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{6} } func (x *ExcelTwoInfo) GetArtistUid() string { if x != nil { return x.ArtistUid } return "" } func (x *ExcelTwoInfo) GetBatchTime() string { if x != nil { return x.BatchTime } return "" } func (x *ExcelTwoInfo) GetArtistName() string { if x != nil { return x.ArtistName } return "" } func (x *ExcelTwoInfo) GetTfNum() string { if x != nil { return x.TfNum } return "" } func (x *ExcelTwoInfo) GetArtworkName() string { if x != nil { return x.ArtworkName } return "" } func (x *ExcelTwoInfo) GetRuler() float32 { if x != nil { return x.Ruler } return 0 } func (x *ExcelTwoInfo) GetSaleNo() string { if x != nil { return x.SaleNo } return "" } func (x *ExcelTwoInfo) GetCompleteDate() string { if x != nil { return x.CompleteDate } return "" } func (x *ExcelTwoInfo) GetSalePrice() float32 { if x != nil { return x.SalePrice } return 0 } type ArtworkSoldDetailList struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtworkName string `protobuf:"bytes,6,opt,name=artworkName,json=artwork_name,proto3" json:"artworkName,omitempty"` TfNum string `protobuf:"bytes,7,opt,name=tfNum,json=tf_num,proto3" json:"tfNum,omitempty"` Ruler float32 `protobuf:"fixed32,8,opt,name=ruler,proto3" json:"ruler,omitempty"` SaleNo string `protobuf:"bytes,9,opt,name=saleNo,proto3" json:"saleNo,omitempty"` CompleteDate string `protobuf:"bytes,10,opt,name=completeDate,json=complete_date,proto3" json:"completeDate,omitempty"` SalePrice float32 `protobuf:"fixed32,11,opt,name=salePrice,proto3" json:"salePrice,omitempty"` } func (x *ArtworkSoldDetailList) Reset() { *x = ArtworkSoldDetailList{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ArtworkSoldDetailList) String() string { return protoimpl.X.MessageStringOf(x) } func (*ArtworkSoldDetailList) ProtoMessage() {} func (x *ArtworkSoldDetailList) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ArtworkSoldDetailList.ProtoReflect.Descriptor instead. func (*ArtworkSoldDetailList) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{7} } func (x *ArtworkSoldDetailList) GetArtworkName() string { if x != nil { return x.ArtworkName } return "" } func (x *ArtworkSoldDetailList) GetTfNum() string { if x != nil { return x.TfNum } return "" } func (x *ArtworkSoldDetailList) GetRuler() float32 { if x != nil { return x.Ruler } return 0 } func (x *ArtworkSoldDetailList) GetSaleNo() string { if x != nil { return x.SaleNo } return "" } func (x *ArtworkSoldDetailList) GetCompleteDate() string { if x != nil { return x.CompleteDate } return "" } func (x *ArtworkSoldDetailList) GetSalePrice() float32 { if x != nil { return x.SalePrice } return 0 } type ArtistList struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchUid string `protobuf:"bytes,1,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` ArtistName string `protobuf:"bytes,2,opt,name=artistName,json=artist_uid,proto3" json:"artistName,omitempty"` BatchTime string `protobuf:"bytes,3,opt,name=batchTime,json=batch_time,proto3" json:"batchTime,omitempty"` State int32 `protobuf:"varint,4,opt,name=state,proto3" json:"state,omitempty"` Status int32 `protobuf:"varint,5,opt,name=status,proto3" json:"status,omitempty"` ViewUrl string `protobuf:"bytes,6,opt,name=viewUrl,json=view_url,proto3" json:"viewUrl,omitempty"` DownloadUrl string `protobuf:"bytes,7,opt,name=downloadUrl,json=download_url,proto3" json:"downloadUrl,omitempty"` ArtworkSoldDetailList []*ArtworkSoldDetailList `protobuf:"bytes,8,rep,name=artworkSoldDetailList,json=artwork_sold_detail_list,proto3" json:"artworkSoldDetailList,omitempty"` } func (x *ArtistList) Reset() { *x = ArtistList{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ArtistList) String() string { return protoimpl.X.MessageStringOf(x) } func (*ArtistList) ProtoMessage() {} func (x *ArtistList) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ArtistList.ProtoReflect.Descriptor instead. func (*ArtistList) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{8} } func (x *ArtistList) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } func (x *ArtistList) GetArtistName() string { if x != nil { return x.ArtistName } return "" } func (x *ArtistList) GetBatchTime() string { if x != nil { return x.BatchTime } return "" } func (x *ArtistList) GetState() int32 { if x != nil { return x.State } return 0 } func (x *ArtistList) GetStatus() int32 { if x != nil { return x.Status } return 0 } func (x *ArtistList) GetViewUrl() string { if x != nil { return x.ViewUrl } return "" } func (x *ArtistList) GetDownloadUrl() string { if x != nil { return x.DownloadUrl } return "" } func (x *ArtistList) GetArtworkSoldDetailList() []*ArtworkSoldDetailList { if x != nil { return x.ArtworkSoldDetailList } return nil } type UploadExcelOneTxRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ExcelOneInfo []*ExcelOneInfo `protobuf:"bytes,1,rep,name=excelOneInfo,json=excel_one_info,proto3" json:"excelOneInfo,omitempty"` } func (x *UploadExcelOneTxRequest) Reset() { *x = UploadExcelOneTxRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelOneTxRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelOneTxRequest) ProtoMessage() {} func (x *UploadExcelOneTxRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelOneTxRequest.ProtoReflect.Descriptor instead. func (*UploadExcelOneTxRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{9} } func (x *UploadExcelOneTxRequest) GetExcelOneInfo() []*ExcelOneInfo { if x != nil { return x.ExcelOneInfo } return nil } type UploadExcelOneTxRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *UploadExcelOneTxRespond) Reset() { *x = UploadExcelOneTxRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelOneTxRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelOneTxRespond) ProtoMessage() {} func (x *UploadExcelOneTxRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelOneTxRespond.ProtoReflect.Descriptor instead. func (*UploadExcelOneTxRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{10} } func (x *UploadExcelOneTxRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type UploadExcelTwoTxRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ExcelTwoInfo []*ExcelTwoInfo `protobuf:"bytes,1,rep,name=excelTwoInfo,json=excel_one_info,proto3" json:"excelTwoInfo,omitempty"` } func (x *UploadExcelTwoTxRequest) Reset() { *x = UploadExcelTwoTxRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelTwoTxRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelTwoTxRequest) ProtoMessage() {} func (x *UploadExcelTwoTxRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelTwoTxRequest.ProtoReflect.Descriptor instead. func (*UploadExcelTwoTxRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{11} } func (x *UploadExcelTwoTxRequest) GetExcelTwoInfo() []*ExcelTwoInfo { if x != nil { return x.ExcelTwoInfo } return nil } type UploadExcelTwoTxRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *UploadExcelTwoTxRespond) Reset() { *x = UploadExcelTwoTxRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelTwoTxRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelTwoTxRespond) ProtoMessage() {} func (x *UploadExcelTwoTxRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelTwoTxRespond.ProtoReflect.Descriptor instead. func (*UploadExcelTwoTxRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{12} } func (x *UploadExcelTwoTxRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type UploadExcelOneCopyRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ExcelOneInfo []*ExcelOneInfo `protobuf:"bytes,1,rep,name=excelOneInfo,json=excel_one_info,proto3" json:"excelOneInfo,omitempty"` } func (x *UploadExcelOneCopyRequest) Reset() { *x = UploadExcelOneCopyRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelOneCopyRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelOneCopyRequest) ProtoMessage() {} func (x *UploadExcelOneCopyRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelOneCopyRequest.ProtoReflect.Descriptor instead. func (*UploadExcelOneCopyRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{13} } func (x *UploadExcelOneCopyRequest) GetExcelOneInfo() []*ExcelOneInfo { if x != nil { return x.ExcelOneInfo } return nil } type UploadExcelOneCopyRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *UploadExcelOneCopyRespond) Reset() { *x = UploadExcelOneCopyRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelOneCopyRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelOneCopyRespond) ProtoMessage() {} func (x *UploadExcelOneCopyRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelOneCopyRespond.ProtoReflect.Descriptor instead. func (*UploadExcelOneCopyRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{14} } func (x *UploadExcelOneCopyRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type UploadExcelTwoCopyRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ExcelTwoInfo []*ExcelTwoInfo `protobuf:"bytes,1,rep,name=excelTwoInfo,json=excel_one_info,proto3" json:"excelTwoInfo,omitempty"` } func (x *UploadExcelTwoCopyRequest) Reset() { *x = UploadExcelTwoCopyRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelTwoCopyRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelTwoCopyRequest) ProtoMessage() {} func (x *UploadExcelTwoCopyRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelTwoCopyRequest.ProtoReflect.Descriptor instead. func (*UploadExcelTwoCopyRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{15} } func (x *UploadExcelTwoCopyRequest) GetExcelTwoInfo() []*ExcelTwoInfo { if x != nil { return x.ExcelTwoInfo } return nil } type UploadExcelTwoCopyRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *UploadExcelTwoCopyRespond) Reset() { *x = UploadExcelTwoCopyRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *UploadExcelTwoCopyRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*UploadExcelTwoCopyRespond) ProtoMessage() {} func (x *UploadExcelTwoCopyRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use UploadExcelTwoCopyRespond.ProtoReflect.Descriptor instead. func (*UploadExcelTwoCopyRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{16} } func (x *UploadExcelTwoCopyRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type GetAllBatchTimeTxRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GetAllBatchTimeTxRequest) Reset() { *x = GetAllBatchTimeTxRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAllBatchTimeTxRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAllBatchTimeTxRequest) ProtoMessage() {} func (x *GetAllBatchTimeTxRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetAllBatchTimeTxRequest.ProtoReflect.Descriptor instead. func (*GetAllBatchTimeTxRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{17} } type GetAllBatchTimeTxRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchTime []string `protobuf:"bytes,1,rep,name=BatchTime,json=batch_time,proto3" json:"BatchTime,omitempty"` Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *GetAllBatchTimeTxRespond) Reset() { *x = GetAllBatchTimeTxRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAllBatchTimeTxRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAllBatchTimeTxRespond) ProtoMessage() {} func (x *GetAllBatchTimeTxRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetAllBatchTimeTxRespond.ProtoReflect.Descriptor instead. func (*GetAllBatchTimeTxRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{18} } func (x *GetAllBatchTimeTxRespond) GetBatchTime() []string { if x != nil { return x.BatchTime } return nil } func (x *GetAllBatchTimeTxRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type GetAllBatchTimeCopyRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *GetAllBatchTimeCopyRequest) Reset() { *x = GetAllBatchTimeCopyRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAllBatchTimeCopyRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAllBatchTimeCopyRequest) ProtoMessage() {} func (x *GetAllBatchTimeCopyRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetAllBatchTimeCopyRequest.ProtoReflect.Descriptor instead. func (*GetAllBatchTimeCopyRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{19} } type GetAllBatchTimeCopyRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchTime []string `protobuf:"bytes,1,rep,name=BatchTime,json=batch_time,proto3" json:"BatchTime,omitempty"` Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *GetAllBatchTimeCopyRespond) Reset() { *x = GetAllBatchTimeCopyRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetAllBatchTimeCopyRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetAllBatchTimeCopyRespond) ProtoMessage() {} func (x *GetAllBatchTimeCopyRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetAllBatchTimeCopyRespond.ProtoReflect.Descriptor instead. func (*GetAllBatchTimeCopyRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{20} } func (x *GetAllBatchTimeCopyRespond) GetBatchTime() []string { if x != nil { return x.BatchTime } return nil } func (x *GetAllBatchTimeCopyRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type GetArtworkSoldTxDetailListRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistName string `protobuf:"bytes,1,opt,name=artistName,json=artist_name,proto3" json:"artistName,omitempty"` BatchTime string `protobuf:"bytes,2,opt,name=batchTime,json=batch_time,proto3" json:"batchTime,omitempty"` State int32 `protobuf:"varint,3,opt,name=state,proto3" json:"state,omitempty"` Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page,omitempty"` Num int32 `protobuf:"varint,5,opt,name=num,proto3" json:"num,omitempty"` } func (x *GetArtworkSoldTxDetailListRequest) Reset() { *x = GetArtworkSoldTxDetailListRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetArtworkSoldTxDetailListRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetArtworkSoldTxDetailListRequest) ProtoMessage() {} func (x *GetArtworkSoldTxDetailListRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetArtworkSoldTxDetailListRequest.ProtoReflect.Descriptor instead. func (*GetArtworkSoldTxDetailListRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{21} } func (x *GetArtworkSoldTxDetailListRequest) GetArtistName() string { if x != nil { return x.ArtistName } return "" } func (x *GetArtworkSoldTxDetailListRequest) GetBatchTime() string { if x != nil { return x.BatchTime } return "" } func (x *GetArtworkSoldTxDetailListRequest) GetState() int32 { if x != nil { return x.State } return 0 } func (x *GetArtworkSoldTxDetailListRequest) GetPage() int32 { if x != nil { return x.Page } return 0 } func (x *GetArtworkSoldTxDetailListRequest) GetNum() int32 { if x != nil { return x.Num } return 0 } type GetArtworkSoldTxDetailListRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistList []*ArtistList `protobuf:"bytes,1,rep,name=artist_list,proto3" json:"artist_list,omitempty"` Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *GetArtworkSoldTxDetailListRespond) Reset() { *x = GetArtworkSoldTxDetailListRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetArtworkSoldTxDetailListRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetArtworkSoldTxDetailListRespond) ProtoMessage() {} func (x *GetArtworkSoldTxDetailListRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetArtworkSoldTxDetailListRespond.ProtoReflect.Descriptor instead. func (*GetArtworkSoldTxDetailListRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{22} } func (x *GetArtworkSoldTxDetailListRespond) GetArtistList() []*ArtistList { if x != nil { return x.ArtistList } return nil } func (x *GetArtworkSoldTxDetailListRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type GetArtworkSoldCopyDetailListRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistName string `protobuf:"bytes,1,opt,name=artistName,json=artist_name,proto3" json:"artistName,omitempty"` BatchTime string `protobuf:"bytes,2,opt,name=batchTime,json=batch_time,proto3" json:"batchTime,omitempty"` State int32 `protobuf:"varint,3,opt,name=state,proto3" json:"state,omitempty"` Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page,omitempty"` Num int32 `protobuf:"varint,5,opt,name=num,proto3" json:"num,omitempty"` } func (x *GetArtworkSoldCopyDetailListRequest) Reset() { *x = GetArtworkSoldCopyDetailListRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetArtworkSoldCopyDetailListRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetArtworkSoldCopyDetailListRequest) ProtoMessage() {} func (x *GetArtworkSoldCopyDetailListRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetArtworkSoldCopyDetailListRequest.ProtoReflect.Descriptor instead. func (*GetArtworkSoldCopyDetailListRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{23} } func (x *GetArtworkSoldCopyDetailListRequest) GetArtistName() string { if x != nil { return x.ArtistName } return "" } func (x *GetArtworkSoldCopyDetailListRequest) GetBatchTime() string { if x != nil { return x.BatchTime } return "" } func (x *GetArtworkSoldCopyDetailListRequest) GetState() int32 { if x != nil { return x.State } return 0 } func (x *GetArtworkSoldCopyDetailListRequest) GetPage() int32 { if x != nil { return x.Page } return 0 } func (x *GetArtworkSoldCopyDetailListRequest) GetNum() int32 { if x != nil { return x.Num } return 0 } type GetArtworkSoldCopyDetailListRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistList []*ArtistList `protobuf:"bytes,1,rep,name=artist_list,proto3" json:"artist_list,omitempty"` Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *GetArtworkSoldCopyDetailListRespond) Reset() { *x = GetArtworkSoldCopyDetailListRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetArtworkSoldCopyDetailListRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetArtworkSoldCopyDetailListRespond) ProtoMessage() {} func (x *GetArtworkSoldCopyDetailListRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetArtworkSoldCopyDetailListRespond.ProtoReflect.Descriptor instead. func (*GetArtworkSoldCopyDetailListRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{24} } func (x *GetArtworkSoldCopyDetailListRespond) GetArtistList() []*ArtistList { if x != nil { return x.ArtistList } return nil } func (x *GetArtworkSoldCopyDetailListRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type StatementListRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistUid string `protobuf:"bytes,1,opt,name=artistUid,json=artist_uid,proto3" json:"artistUid,omitempty"` PageSize int32 `protobuf:"varint,2,opt,name=pageSize,proto3" json:"pageSize,omitempty"` Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page,omitempty"` State int32 `protobuf:"varint,4,opt,name=state,proto3" json:"state,omitempty"` } func (x *StatementListRequest) Reset() { *x = StatementListRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StatementListRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*StatementListRequest) ProtoMessage() {} func (x *StatementListRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StatementListRequest.ProtoReflect.Descriptor instead. func (*StatementListRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{25} } func (x *StatementListRequest) GetArtistUid() string { if x != nil { return x.ArtistUid } return "" } func (x *StatementListRequest) GetPageSize() int32 { if x != nil { return x.PageSize } return 0 } func (x *StatementListRequest) GetPage() int32 { if x != nil { return x.Page } return 0 } func (x *StatementListRequest) GetState() int32 { if x != nil { return x.State } return 0 } type StatementListRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Data []*Contracts `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"` Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *StatementListRespond) Reset() { *x = StatementListRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StatementListRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*StatementListRespond) ProtoMessage() {} func (x *StatementListRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StatementListRespond.ProtoReflect.Descriptor instead. func (*StatementListRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{26} } func (x *StatementListRespond) GetData() []*Contracts { if x != nil { return x.Data } return nil } func (x *StatementListRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type GetTxInfoByBatchUidRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchUid string `protobuf:"bytes,1,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` } func (x *GetTxInfoByBatchUidRequest) Reset() { *x = GetTxInfoByBatchUidRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetTxInfoByBatchUidRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetTxInfoByBatchUidRequest) ProtoMessage() {} func (x *GetTxInfoByBatchUidRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetTxInfoByBatchUidRequest.ProtoReflect.Descriptor instead. func (*GetTxInfoByBatchUidRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{27} } func (x *GetTxInfoByBatchUidRequest) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } type GetTxInfoByBatchUidRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistName string `protobuf:"bytes,1,opt,name=artistName,json=artist_name,proto3" json:"artistName,omitempty"` ArtworkTxDetail []*ArtworkTxDetail `protobuf:"bytes,2,rep,name=artworkTxDetail,json=artwork_tx_detail,proto3" json:"artworkTxDetail,omitempty"` ArtworkSoldTxDetail []*ArtworkSoldTxDetail `protobuf:"bytes,3,rep,name=artworkSoldTxDetail,json=artwork_sold_tx_detail,proto3" json:"artworkSoldTxDetail,omitempty"` Msg string `protobuf:"bytes,4,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *GetTxInfoByBatchUidRespond) Reset() { *x = GetTxInfoByBatchUidRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetTxInfoByBatchUidRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetTxInfoByBatchUidRespond) ProtoMessage() {} func (x *GetTxInfoByBatchUidRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetTxInfoByBatchUidRespond.ProtoReflect.Descriptor instead. func (*GetTxInfoByBatchUidRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{28} } func (x *GetTxInfoByBatchUidRespond) GetArtistName() string { if x != nil { return x.ArtistName } return "" } func (x *GetTxInfoByBatchUidRespond) GetArtworkTxDetail() []*ArtworkTxDetail { if x != nil { return x.ArtworkTxDetail } return nil } func (x *GetTxInfoByBatchUidRespond) GetArtworkSoldTxDetail() []*ArtworkSoldTxDetail { if x != nil { return x.ArtworkSoldTxDetail } return nil } func (x *GetTxInfoByBatchUidRespond) GetMsg() string { if x != nil { return x.Msg } return "" } type GetCopyInfoByBatchUidRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields BatchUid string `protobuf:"bytes,1,opt,name=batchUid,json=batch_uid,proto3" json:"batchUid,omitempty"` } func (x *GetCopyInfoByBatchUidRequest) Reset() { *x = GetCopyInfoByBatchUidRequest{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCopyInfoByBatchUidRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCopyInfoByBatchUidRequest) ProtoMessage() {} func (x *GetCopyInfoByBatchUidRequest) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetCopyInfoByBatchUidRequest.ProtoReflect.Descriptor instead. func (*GetCopyInfoByBatchUidRequest) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{29} } func (x *GetCopyInfoByBatchUidRequest) GetBatchUid() string { if x != nil { return x.BatchUid } return "" } type GetCopyInfoByBatchUidRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ArtistName string `protobuf:"bytes,1,opt,name=artistName,json=artist_name,proto3" json:"artistName,omitempty"` ArtworkCopyDetail []*ArtworkCopyDetail `protobuf:"bytes,2,rep,name=artworkCopyDetail,json=artwork_copy_detail,proto3" json:"artworkCopyDetail,omitempty"` ArtworkSoldCopyDetail []*ArtworkSoldCopyDetail `protobuf:"bytes,3,rep,name=artworkSoldCopyDetail,json=artwork_sold_copy_detail,proto3" json:"artworkSoldCopyDetail,omitempty"` Msg string `protobuf:"bytes,4,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *GetCopyInfoByBatchUidRespond) Reset() { *x = GetCopyInfoByBatchUidRespond{} if protoimpl.UnsafeEnabled { mi := &file_Statement_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GetCopyInfoByBatchUidRespond) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetCopyInfoByBatchUidRespond) ProtoMessage() {} func (x *GetCopyInfoByBatchUidRespond) ProtoReflect() protoreflect.Message { mi := &file_Statement_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetCopyInfoByBatchUidRespond.ProtoReflect.Descriptor instead. func (*GetCopyInfoByBatchUidRespond) Descriptor() ([]byte, []int) { return file_Statement_proto_rawDescGZIP(), []int{30} } func (x *GetCopyInfoByBatchUidRespond) GetArtistName() string { if x != nil { return x.ArtistName } return "" } func (x *GetCopyInfoByBatchUidRespond) GetArtworkCopyDetail() []*ArtworkCopyDetail { if x != nil { return x.ArtworkCopyDetail } return nil } func (x *GetCopyInfoByBatchUidRespond) GetArtworkSoldCopyDetail() []*ArtworkSoldCopyDetail { if x != nil { return x.ArtworkSoldCopyDetail } return nil } func (x *GetCopyInfoByBatchUidRespond) GetMsg() string { if x != nil { return x.Msg } return "" } var File_Statement_proto protoreflect.FileDescriptor var file_Statement_proto_rawDesc = []byte{ 0x0a, 0x0f, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xd5, 0x03, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x07, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x75, 0x72, 0x6c, 0x12, 0x21, 0x0a, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x75, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x27, 0x0a, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x22, 0xc3, 0x01, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x66, 0x4e, 0x75, 0x6d, 0x12, 0x21, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0xa4, 0x02, 0x0a, 0x13, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x66, 0x4e, 0x75, 0x6d, 0x12, 0x21, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x06, 0x73, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x6e, 0x6f, 0x12, 0x23, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0xc5, 0x01, 0x0a, 0x11, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x66, 0x4e, 0x75, 0x6d, 0x12, 0x21, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0xa6, 0x02, 0x0a, 0x15, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x54, 0x66, 0x4e, 0x75, 0x6d, 0x12, 0x21, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x06, 0x73, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x6e, 0x6f, 0x12, 0x23, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0x82, 0x02, 0x0a, 0x0c, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x05, 0x74, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x66, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x21, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0x97, 0x02, 0x0a, 0x0c, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x05, 0x74, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x66, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x21, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x12, 0x23, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x22, 0xc2, 0x01, 0x0a, 0x15, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x05, 0x74, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x66, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x61, 0x6c, 0x65, 0x4e, 0x6f, 0x12, 0x23, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x22, 0xaf, 0x02, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, 0x0a, 0x07, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x75, 0x72, 0x6c, 0x12, 0x21, 0x0a, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x75, 0x72, 0x6c, 0x12, 0x59, 0x0a, 0x15, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x18, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x6f, 0x6c, 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x58, 0x0a, 0x17, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x0c, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x5f, 0x6f, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x2b, 0x0a, 0x17, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x58, 0x0a, 0x17, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x0c, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x5f, 0x6f, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x2b, 0x0a, 0x17, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x5a, 0x0a, 0x19, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x0c, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x5f, 0x6f, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x2d, 0x0a, 0x19, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x5a, 0x0a, 0x19, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x0c, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x5f, 0x6f, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x2d, 0x0a, 0x19, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x1a, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4b, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x1c, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4d, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x9f, 0x01, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x22, 0x6e, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0xa1, 0x01, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x22, 0x70, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x7b, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x52, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x39, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x22, 0xec, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0f, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x11, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x78, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x53, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x16, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x6f, 0x6c, 0x64, 0x5f, 0x74, 0x78, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x3b, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x70, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x69, 0x64, 0x22, 0xfa, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x70, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x11, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x13, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x70, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x59, 0x0a, 0x15, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x18, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x70, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x32, 0xff, 0x08, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x5c, 0x0a, 0x10, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x54, 0x78, 0x12, 0x22, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x10, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x54, 0x78, 0x12, 0x22, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x12, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x4f, 0x6e, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x12, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x43, 0x6f, 0x70, 0x79, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x45, 0x78, 0x63, 0x65, 0x6c, 0x54, 0x77, 0x6f, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x78, 0x12, 0x23, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x12, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x7a, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x54, 0x78, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x80, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x70, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x12, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x6b, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x70, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x70, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x70, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x42, 0x0e, 0x5a, 0x0c, 0x2e, 0x2f, 0x3b, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_Statement_proto_rawDescOnce sync.Once file_Statement_proto_rawDescData = file_Statement_proto_rawDesc ) func file_Statement_proto_rawDescGZIP() []byte { file_Statement_proto_rawDescOnce.Do(func() { file_Statement_proto_rawDescData = protoimpl.X.CompressGZIP(file_Statement_proto_rawDescData) }) return file_Statement_proto_rawDescData } var file_Statement_proto_msgTypes = make([]protoimpl.MessageInfo, 31) var file_Statement_proto_goTypes = []interface{}{ (*Contracts)(nil), // 0: statement.Contracts (*ArtworkTxDetail)(nil), // 1: statement.ArtworkTxDetail (*ArtworkSoldTxDetail)(nil), // 2: statement.ArtworkSoldTxDetail (*ArtworkCopyDetail)(nil), // 3: statement.ArtworkCopyDetail (*ArtworkSoldCopyDetail)(nil), // 4: statement.ArtworkSoldCopyDetail (*ExcelOneInfo)(nil), // 5: statement.ExcelOneInfo (*ExcelTwoInfo)(nil), // 6: statement.ExcelTwoInfo (*ArtworkSoldDetailList)(nil), // 7: statement.ArtworkSoldDetailList (*ArtistList)(nil), // 8: statement.ArtistList (*UploadExcelOneTxRequest)(nil), // 9: statement.UploadExcelOneTxRequest (*UploadExcelOneTxRespond)(nil), // 10: statement.UploadExcelOneTxRespond (*UploadExcelTwoTxRequest)(nil), // 11: statement.UploadExcelTwoTxRequest (*UploadExcelTwoTxRespond)(nil), // 12: statement.UploadExcelTwoTxRespond (*UploadExcelOneCopyRequest)(nil), // 13: statement.UploadExcelOneCopyRequest (*UploadExcelOneCopyRespond)(nil), // 14: statement.UploadExcelOneCopyRespond (*UploadExcelTwoCopyRequest)(nil), // 15: statement.UploadExcelTwoCopyRequest (*UploadExcelTwoCopyRespond)(nil), // 16: statement.UploadExcelTwoCopyRespond (*GetAllBatchTimeTxRequest)(nil), // 17: statement.GetAllBatchTimeTxRequest (*GetAllBatchTimeTxRespond)(nil), // 18: statement.GetAllBatchTimeTxRespond (*GetAllBatchTimeCopyRequest)(nil), // 19: statement.GetAllBatchTimeCopyRequest (*GetAllBatchTimeCopyRespond)(nil), // 20: statement.GetAllBatchTimeCopyRespond (*GetArtworkSoldTxDetailListRequest)(nil), // 21: statement.GetArtworkSoldTxDetailListRequest (*GetArtworkSoldTxDetailListRespond)(nil), // 22: statement.GetArtworkSoldTxDetailListRespond (*GetArtworkSoldCopyDetailListRequest)(nil), // 23: statement.GetArtworkSoldCopyDetailListRequest (*GetArtworkSoldCopyDetailListRespond)(nil), // 24: statement.GetArtworkSoldCopyDetailListRespond (*StatementListRequest)(nil), // 25: statement.StatementListRequest (*StatementListRespond)(nil), // 26: statement.StatementListRespond (*GetTxInfoByBatchUidRequest)(nil), // 27: statement.GetTxInfoByBatchUidRequest (*GetTxInfoByBatchUidRespond)(nil), // 28: statement.GetTxInfoByBatchUidRespond (*GetCopyInfoByBatchUidRequest)(nil), // 29: statement.GetCopyInfoByBatchUidRequest (*GetCopyInfoByBatchUidRespond)(nil), // 30: statement.GetCopyInfoByBatchUidRespond } var file_Statement_proto_depIdxs = []int32{ 7, // 0: statement.ArtistList.artworkSoldDetailList:type_name -> statement.ArtworkSoldDetailList 5, // 1: statement.UploadExcelOneTxRequest.excelOneInfo:type_name -> statement.ExcelOneInfo 6, // 2: statement.UploadExcelTwoTxRequest.excelTwoInfo:type_name -> statement.ExcelTwoInfo 5, // 3: statement.UploadExcelOneCopyRequest.excelOneInfo:type_name -> statement.ExcelOneInfo 6, // 4: statement.UploadExcelTwoCopyRequest.excelTwoInfo:type_name -> statement.ExcelTwoInfo 8, // 5: statement.GetArtworkSoldTxDetailListRespond.artist_list:type_name -> statement.ArtistList 8, // 6: statement.GetArtworkSoldCopyDetailListRespond.artist_list:type_name -> statement.ArtistList 0, // 7: statement.StatementListRespond.data:type_name -> statement.Contracts 1, // 8: statement.GetTxInfoByBatchUidRespond.artworkTxDetail:type_name -> statement.ArtworkTxDetail 2, // 9: statement.GetTxInfoByBatchUidRespond.artworkSoldTxDetail:type_name -> statement.ArtworkSoldTxDetail 3, // 10: statement.GetCopyInfoByBatchUidRespond.artworkCopyDetail:type_name -> statement.ArtworkCopyDetail 4, // 11: statement.GetCopyInfoByBatchUidRespond.artworkSoldCopyDetail:type_name -> statement.ArtworkSoldCopyDetail 9, // 12: statement.Statement.UploadExcelOneTx:input_type -> statement.UploadExcelOneTxRequest 11, // 13: statement.Statement.UploadExcelTwoTx:input_type -> statement.UploadExcelTwoTxRequest 13, // 14: statement.Statement.UploadExcelOneCopy:input_type -> statement.UploadExcelOneCopyRequest 15, // 15: statement.Statement.UploadExcelTwoCopy:input_type -> statement.UploadExcelTwoCopyRequest 17, // 16: statement.Statement.GetAllBatchTimeTx:input_type -> statement.GetAllBatchTimeTxRequest 19, // 17: statement.Statement.GetAllBatchTimeCopy:input_type -> statement.GetAllBatchTimeCopyRequest 21, // 18: statement.Statement.GetArtworkSoldTxDetailList:input_type -> statement.GetArtworkSoldTxDetailListRequest 23, // 19: statement.Statement.GetArtworkSoldCopyDetailList:input_type -> statement.GetArtworkSoldCopyDetailListRequest 25, // 20: statement.Statement.StatementList:input_type -> statement.StatementListRequest 27, // 21: statement.Statement.GetTxInfoByBatchUid:input_type -> statement.GetTxInfoByBatchUidRequest 29, // 22: statement.Statement.GetCopyInfoByBatchUid:input_type -> statement.GetCopyInfoByBatchUidRequest 10, // 23: statement.Statement.UploadExcelOneTx:output_type -> statement.UploadExcelOneTxRespond 12, // 24: statement.Statement.UploadExcelTwoTx:output_type -> statement.UploadExcelTwoTxRespond 14, // 25: statement.Statement.UploadExcelOneCopy:output_type -> statement.UploadExcelOneCopyRespond 16, // 26: statement.Statement.UploadExcelTwoCopy:output_type -> statement.UploadExcelTwoCopyRespond 18, // 27: statement.Statement.GetAllBatchTimeTx:output_type -> statement.GetAllBatchTimeTxRespond 20, // 28: statement.Statement.GetAllBatchTimeCopy:output_type -> statement.GetAllBatchTimeCopyRespond 22, // 29: statement.Statement.GetArtworkSoldTxDetailList:output_type -> statement.GetArtworkSoldTxDetailListRespond 24, // 30: statement.Statement.GetArtworkSoldCopyDetailList:output_type -> statement.GetArtworkSoldCopyDetailListRespond 26, // 31: statement.Statement.StatementList:output_type -> statement.StatementListRespond 28, // 32: statement.Statement.GetTxInfoByBatchUid:output_type -> statement.GetTxInfoByBatchUidRespond 30, // 33: statement.Statement.GetCopyInfoByBatchUid:output_type -> statement.GetCopyInfoByBatchUidRespond 23, // [23:34] is the sub-list for method output_type 12, // [12:23] is the sub-list for method input_type 12, // [12:12] is the sub-list for extension type_name 12, // [12:12] is the sub-list for extension extendee 0, // [0:12] is the sub-list for field type_name } func init() { file_Statement_proto_init() } func file_Statement_proto_init() { if File_Statement_proto != nil { return } if !protoimpl.UnsafeEnabled { file_Statement_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Contracts); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtworkTxDetail); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtworkSoldTxDetail); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtworkCopyDetail); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtworkSoldCopyDetail); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ExcelOneInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ExcelTwoInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtworkSoldDetailList); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtistList); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelOneTxRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelOneTxRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelTwoTxRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelTwoTxRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelOneCopyRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelOneCopyRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelTwoCopyRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UploadExcelTwoCopyRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAllBatchTimeTxRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAllBatchTimeTxRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAllBatchTimeCopyRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetAllBatchTimeCopyRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetArtworkSoldTxDetailListRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetArtworkSoldTxDetailListRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetArtworkSoldCopyDetailListRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetArtworkSoldCopyDetailListRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatementListRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatementListRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTxInfoByBatchUidRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTxInfoByBatchUidRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCopyInfoByBatchUidRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_Statement_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCopyInfoByBatchUidRespond); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_Statement_proto_rawDesc, NumEnums: 0, NumMessages: 31, NumExtensions: 0, NumServices: 1, }, GoTypes: file_Statement_proto_goTypes, DependencyIndexes: file_Statement_proto_depIdxs, MessageInfos: file_Statement_proto_msgTypes, }.Build() File_Statement_proto = out.File file_Statement_proto_rawDesc = nil file_Statement_proto_goTypes = nil file_Statement_proto_depIdxs = nil }